Heim > Backend-Entwicklung > PHP-Tutorial > PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian

Christopher Nolan
Freigeben: 2024-12-24 16:42:46
nach vorne
171 Leute haben es durchsucht

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.

截屏2024-12-24 16.35.26.png

Potenzielle Auswirkungen auf die Abwärtskompatibilität in PHP 8.4

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:

  • Implizit nullfähige Parameterdeklarationen veraltet
  • E_STRICT-Konstante veraltet
  • Erweiterungen vom PHP-Kern nach PECL verschoben: Pspell, IMAP, OCI8 und PDO_OCI.

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
Nach dem Login kopieren

2. Fügen Sie ondrej/php PPA/DPA hinzu

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
Nach dem Login kopieren

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 &#39;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
Nach dem Login kopieren

PHP-CLI und PHP als Apache-Modul

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
Nach dem Login kopieren

Sofern die PHP-Anwendung nicht die Installation von PHP als Apache-Modul erfordert, sollten Sie die Installation von PHP-FPM in Betracht ziehen stattdessen.

PHP CLI und PHP-FPM (empfohlen)

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
Nach dem Login kopieren

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.

5. Installation prüfen

Für eine schnelle Überprüfung der PHP-Installation führen Sie Folgendes aus:

php -v
Nach dem Login kopieren

Es sollte die PHP-Version, die Build-Zeit und weitere Informationen anzeigen:

`php -v` output
`php -v`-Ausgabe

Wenn der PHP-FPM-Dienst installiert ist, kann sein Status als überprüft werden folgt:

sudo systemctl status php8.4-fpm
Nach dem Login kopieren

Wenn der PHP-FPM-Server erfolgreich läuft, sollte er eine Ausgabe ähnlich der folgenden anzeigen:


php-fpm status
`systemctl status php8.4-fpm`-Ausgabe

4. PHP-Erweiterungen installieren

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
Nach dem Login kopieren

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}
Nach dem Login kopieren

Um nach zusätzlichen PHP-Erweiterungen zu suchen, verwenden Sie den apt-Suchbefehl:

apt search php8.4
Nach dem Login kopieren

Entwicklung Tools

Entwicklungstools wie Xdebug und Code-Coverage-Tools können ebenfalls nach der gleichen Paketnamenskonvention installiert werden.

Dieser Schritt wird auf Produktionsservern nicht empfohlen.

Xdebug

sudo apt install php8.4-xdebug
Nach dem Login kopieren
Nach dem Login kopieren

PCOV

sudo apt install php8.4-xdebug
Nach dem Login kopieren
Nach dem Login kopieren

5. Webserver-Integration

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.

PHP-FPM

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
Nach dem Login kopieren

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;
Nach dem Login kopieren

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
Nach dem Login kopieren

Weitere Konfigurationsdetails finden Sie unter „So verwenden Sie Caddy Server mit PHP“.

PHP als Apache-Modul

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
Nach dem Login kopieren

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!

Verwandte Etiketten:
php
Quelle:php.watch
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage