PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an Funktionsabkündigungen und Entfernungen.
Diese Anleitung erklärt, wie man PHP 8.4 installiert oder auf PHP 8.4 aktualisiert Ubuntu, Debian oder deren Derivate. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, Die Installation aus einem APT-Repository, wie unten erläutert, ist oft schneller und sicherer, da diese Repositorys den neuesten Fehler enthalten Korrekturen und Sicherheitsupdates in der Zukunft.
PHP 8.4 ist in den aktuellen Debian- und Ubuntu-Software-Repositories nicht verfügbar. Dieser Leitfaden verwendet die von Ondřej Surý verwalteten Repositories. Die PHP-Repositories von Ondrej waren die De-facto-Repositories für PHP auf Ubuntu, Debian und ihren Derivaten seit mehreren Jahren.
PHP 8.4 bringt mehrere neue Funktionen wie Eigenschaften-Hooks , asymmetrische Sichtbarkeit, Verbesserungen bei DOM-, Curl-, PCRE-Erweiterungen und mehr.
PHP 8.4 veraltet jedoch auch einige PHP-Funktionen und entfernt vier PHP-Erweiterungen vom PHP-Kern bis zu PECL. Dies kann sich auf vorhandenes PHP auswirken Es kann dazu führen, dass Anwendungen zusätzliche PHP-Hinweise/Warnungen ausgeben oder in bestimmten Fällen fehlschlagen Bedingungen.
Einige der bemerkenswerten Änderungen, die sich wahrscheinlich auf bestehende Anwendungen auswirken werden, umfassen:
Wenn eine PHP-Erweiterung vom PHP-Kern nach PECL verschoben wird, wird die Erweiterung wird einem eigenen Veröffentlichungszyklus folgen. Die im Leitfaden verwendeten Repositorys stellt Updates für sie bereit, wenn das PECL-Projekt für diese Erweiterung vorliegt veröffentlicht Updates. Dies bedeutet jedoch auch, dass die PECL-Erweiterung (und kommt häufig vor) kommt bei der Wartung in Verzug.
Bevor Sie fortfahren, stellen Sie sicher, dass Sie ein Backup des Systems erstellen. Dieser Leitfaden installiert PHP 8.4 parallel zu allen vorhandenen PHP-Installationen, Dies bietet eine einfache Möglichkeit, zur anderen PHP-Installation zurückzukehren, wenn notwendig.
Dieser Schritt gilt nur, wenn ein vorhandenes PHP-Setup aktualisiert wird. Der folgende Befehl listet alle installierten PHP-Pakete mit dem Text „php“ im Namen auf, zeigt sie auf dem Bildschirm an und schreibt sie in eine Datei namens „packages.txt“. Diese Datei ist in einem späteren Schritt bei der Installation der PHP 8.4-Pakete nützlich, um sicherzustellen, dass dieselbe Liste von PHP 8.4-Versionen der Erweiterungen installiert wird.
dpkg -l | grep php | tee packages.txt
Da PHP 8.4-Pakete in keinem der aktuellen Versionen verfügbar sind Debian- oder Ubuntu-Software-Repositories, aus denen die PHP-Pakete stammen müssen ein weiteres Repo.
Ondřej Surý verwaltet ein Paketarchiv, das kompilierte Binärdateien aller enthält aktuelle PHP-Versionen, für Ubuntu und Debian. Es werden auch mehrere PECL ausgeliefert Erweiterungen einschließlich PECL-Erweiterungen für PHP-Kernerweiterungen entbündelt in PHP 8.4.
Sobald dieses Repository hinzugefügt wurde, können die Erstinstallation und Aktualisierungen mit den Standard-Apt-Befehlen durchgeführt werden.
Ubuntu PPA
sudo LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php # Press enter to confirm.sudo apt update
Debian DPA
sudo apt-get updatesudo apt-get -y install lsb-release ca-certificates curl apt-transport-httpssudo curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.debsudo dpkg -i /tmp/debsuryorg-archive-keyring.debsudo sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'sudo apt-get update</p> <h2>3. PHP 8.4-Server-API-Pakete installieren</h2> <p>Im PPA und DPA von Ondrej folgen PHP 8.4-Pakete dem php8.1-NAME-Muster. PECL und gemeinsam genutzte PHP-Erweiterungen folgen ebenfalls demselben Muster.</p> <p>Bevor Sie PHP-Erweiterungen installieren, stellen Sie sicher, dass Sie eines der folgenden PHP Server API (SAPI)-Pakete installieren:</p> <h3>Nur PHP-CLI installieren</h3> <p>Um PHP CLI zu installieren, installieren Sie das Paket php8.1-cli zusammen mit den Erweiterungen gewünscht.</p> <pre tabindex="0">sudo apt install php8.4-cli
Um PHP CLI und PHP 8.4 als Apache-Modul zu installieren, installieren Sie das Paket libapache2-mod-php8.4:
sudo apt install php8.4-cli libapache2-mod-php8.4
Sofern die PHP-Anwendung nicht die Installation von PHP als Apache-Modul erfordert, sollten Sie die Installation von PHP-FPM in Betracht ziehen stattdessen.
Es wird empfohlen, PHP-FPM zu installieren, um PHP mit Webservern wie Apache, Nginx und Caddy zu integrieren.
sudo apt install php8.4-cli php8.4-fpm
Dadurch wird der php8.4-fpm-Dienst installiert und automatisch aktiviert. Weitere Informationen zu den später erforderlichen zusätzlichen Schritten finden Sie im Abschnitt zur FPM-Webserver-Integration.
Für eine schnelle Überprüfung der PHP-Installation führen Sie Folgendes aus:
php -v
Es sollte die PHP-Version, die Build-Zeit und weitere Informationen anzeigen:
Wenn der PHP-FPM-Dienst installiert ist, kann sein Status als überprüft werden folgt:
sudo systemctl status php8.4-fpm
Wenn der PHP-FPM-Server erfolgreich läuft, sollte er eine Ausgabe ähnlich der folgenden anzeigen:
Alle freigegebenen PHP-Erweiterungen und PECL-Erweiterungen folgen dem php8.4-EXTNAME-Muster, wobei extname der Name der Erweiterung ist.
Beim Upgrade eines vorhandenen Systems lesen Sie bitte die im ersten Schritt erstellte Datei packets.txt, um die vorhandenen PHP 8.3- oder älteren PHP-Erweiterungen zu überprüfen.
Um eine PHP-Erweiterung zu installieren, verwenden Sie die apt install-Befehl mit dem PHP-Erweiterungsnamen mit dem Präfix php-8.4-. Beispielsweise wird die gd-Erweiterung mit dem Paket php8.4-gd installiert:
sudo apt install php8.4-gd
Der folgende Befehl installiert eine Reihe der gängigsten PHP-Erweiterungen, die von den meisten PHP-Bibliotheken und Frameworks benötigt werden:
sudo apt install php8.4-common php8.4-{bcmath,bz2,curl,gd,gmp,intl,mbstring,opcache,readline,xml,zip}
Um nach zusätzlichen PHP-Erweiterungen zu suchen, verwenden Sie den apt-Suchbefehl:
apt search php8.4
Entwicklungstools wie Xdebug und Code-Coverage-Tools können ebenfalls nach der gleichen Paketnamenskonvention installiert werden.
Dieser Schritt wird auf Produktionsservern nicht empfohlen.
sudo apt install php8.4-xdebug
sudo apt install php8.4-xdebug
Abhängig von der in Schritt 3 installierten Server-API erfordert die Webserver-Integration möglicherweise eine zusätzliche Konfiguration, damit das PHP 8.4-Upgrade wirksam wird.
Bei Verwendung von PHP-FPM (durch Installation des Pakets php8.4-fpm) muss der Webserver neu konfiguriert werden, um über die aktualisierte Version mit dem PHP 8.4-FPM-Server zu kommunizieren Socket-Pfad.
Apache: Diese Konfigurationsänderung wird durch Einschalten der PHP 8.4-Konfigurationsdatei vereinfacht:
sudo a2enconf php8.4-fpm
Nginx: Aktualisieren Sie die fastcgi_pass-Direktive von der alten PHP-FPM-Socket-Pfad zum neuen PHP 8.4-Pfad:
- fastcgi_pass unix:/run/php/php8.3-fpm.sock; fastcgi_pass unix:/run/php/php8.4-fpm.sock;
Weitere Informationen finden Sie in der Nginx-Dokumentation Informationen
Caddy Server: Aktualisieren Sie die reverse_proxy-Direktive, um den neuen PHP 8.4 FPM-Server-Socket-Pfad zu verwenden:
- reverse_proxy @phpFiles unix//run/php/php8.3-fpm.sock reverse_proxy @phpFiles unix//run/php/php8.4-fpm.sock
Weitere Konfigurationsdetails finden Sie unter „So verwenden Sie Caddy Server mit PHP“.
Wenn PHP als Apache-Modul installiert ist, deaktiviert der folgende Befehl das bisherige PHP Modul (8.3 in diesem Beispiel) und aktiviert die neue PHP-Version:
sudo a2dismod php8.3 # Change to the current PHP versionsudo a2enmod php8.4
Das obige ist der detaillierte Inhalt vonPHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!