ホームページ > バックエンド開発 > PHPチュートリアル > Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド

Christopher Nolan
リリース: 2024-12-24 16:42:46
転載
174 人が閲覧しました

PHP 8.4 には、いくつかの新機能、セキュリティの改善、および 適切な量​​の機能の非推奨によるパフォーマンスの向上

このガイドでは、PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。 Ubuntu、Debian、またはその派生製品。 PHPをソースからコンパイルすることも可能ですが、 多くの場合、以下で説明するように APT リポジトリからインストールする方が高速です。 これらのリポジトリは最新のバグを提供するため、より安全です

PHP 8.4 は、現在の Debian および Ubuntu ソフトウェア リポジトリでは利用できません。このガイドでは、Ondřej Surý によって管理されているリポジトリを使用します。 Ondrej の PHP リポジトリは、PHP の事実上のリポジトリです。

截屏2024-12-24 16.35.26.png

PHP 8.4 における下位互換性への潜在的な影響

PHP 8.4 には、プロパティ フックなどのいくつかの新機能が導入されています、 非対称可視性、DOM、Curl、PCRE 拡張機能の改善、

ただし、PHP 8.4 では一部の PHP 機能も廃止され、次の機能が削除されています。 PHP コアから PECL までの 4 つの PHP 拡張機能。これは既存の PHP に影響を与える可能性があります アプリケーションが追加の PHP 通知/警告を発行したり、特定の処理に失敗したりする

既存のアプリケーションに影響を与える可能性のある注目すべき変更には次のものがあります。

  • 暗黙的に null 許容パラメータ宣言が非推奨になりました
  • E_STRICT 定数が非推奨になりました
  • PHP コアから PECL に移行された拡張機能: Pspell、IMAP、 OCI8、および PDO_OCI。

PHP 拡張機能が PHP コアから PECL に移動されると、拡張機能 独自のリリースサイクルに従います。このガイドで使用されるリポジトリ その拡張機能の PECL プロジェクトが存在する場合、更新プログラムが提供されます。 アップデートをリリースします。ただし、これは PECL 拡張機能が可能であることも意味します (そして

続行する前に、必ずシステムをバックアップしてください。このガイド PHP 8.4 を既存の PHP インストールと並行してインストールします。 これにより、次の場合に他の PHP インストールに簡単に切り替えることができます。 必要です。


この手順は、既存の PHP セットアップをアップグレードする場合にのみ適用されます。次のコマンドは、名前にテキスト php が含まれるインストールされているすべての PHP パッケージを一覧表示し、画面に表示して、packages.txt というファイルに書き込みます。このファイルは、後の手順で PHP 8.4 パッケージをインストールするときに役立ち、PHP 8.4 バージョンの拡張機能の同じリストが確実にインストールされるようにします。

dpkg -l | grep php | tee packages.txt
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

2. ondrej/php PPA/DPA を追加

PHP 8.4 パッケージは現在のどのバージョンでも利用できないため Debian または Ubuntu ソフトウェア リポジトリ。PHP パッケージは次の場所から取得する必要があります。 別のリポジトリ

オンドジェ・スリ すべてのコンパイル済みバイナリを含むパッケージ アーカイブを維持します。 Ubuntu および Debian の現在の PHP バージョン。いくつかの PECL も出荷されます PHP コア拡張機能の PECL 拡張機能を含む拡張機能がバンドルされていない PHP 8.4 では。

このリポジトリが追加されると、標準の apt コマンドを使用して初期インストールと更新を実行できます。


Ubuntu PPA

dpkg -l | grep php | tee packages.txt
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

Debian DPA

sudo LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php # Press enter to confirm.sudo apt update
ログイン後にコピー
ログイン後にコピー

3. PHP 8.4 サーバー API パッケージをインストールします

Ondrej の PPA および DPA では、PHP 8.4 パッケージは php8.1-NAME パターンに従います。 PECL および共有 PHP 拡張機能も同じパターンに従います。

PHP 拡張機能をインストールする前に、必ず次の PHP Server API (SAPI) パッケージのいずれかをインストールしてください:

PHP-CLI のみをインストールします

PHP CLI をインストールするには、拡張機能とともに php8.1-cli パッケージをインストールします。

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
ログイン後にコピー
ログイン後にコピー

PHP-CLI および Apache モジュールとしての PHP

PHP CLI および PHP 8.4 を Apache モジュールとしてインストールするには、libapache2-mod-php8.4 パッケージをインストールします。

sudo apt install php8.4-cli
ログイン後にコピー
ログイン後にコピー

PHP アプリケーションが PHP を Apache モジュールとしてインストールする必要がない限り、代わりに PHP-FPM のインストールを検討してください。

PHP CLI および PHP-FPM (推奨)

PHP を Apache、Nginx、および Web サーバーと統合するには、PHP-FPM をインストールすることをお勧めします。 Caddy.

sudo apt install php8.4-cli libapache2-mod-php8.4
ログイン後にコピー
ログイン後にコピー

これにより、php8.4-fpm サービスがインストールされ、自動的に有効になります。後で必要となる追加手順については、「FPM Web サーバーの統合」セクションを参照してください。

5.インストールの確認

PHP のインストールを簡単に確認するには、次のコマンドを実行します:

sudo apt install php8.4-cli php8.4-fpm
ログイン後にコピー
ログイン後にコピー

PHP のバージョン、ビルド時間、その他の情報が表示されます:

`php -v` output
`php -v` 出力

PHP-FPM サービスの場合がインストールされている場合、そのステータスは次のように確認できます:

php -v
ログイン後にコピー
ログイン後にコピー

PHP-FPM サーバーが正常に実行されている場合は、次のような出力が表示されるはずです:


php-fpm status
`systemctl status php8.4-fpm`出力

4. PHP 拡張機能をインストールします

すべての共有 PHP 拡張機能と PECL 拡張機能は php8.4-EXTNAME パターンに従います。ここで、extname は拡張機能の名前です。

既存のシステムをアップグレードする場合は、次を参照してください。既存の PHP 8.3 以前の PHP を確認するための最初のステップで作成された package.txt ファイルextensions.

PHP 拡張機能をインストールするには、php-8.4- プレフィックスを付けた PHP 拡張機能名を指定して apt install コマンドを使用します。たとえば、gd 拡張機能は php8.4-gd パッケージとともにインストールされます。

sudo systemctl status php8.4-fpm
ログイン後にコピー

次のコマンドは、大部分の PHP ライブラリおよびフレームワークで必要とされる最も一般的な PHP 拡張機能のセットをインストールします。

sudo apt install php8.4-gd
ログイン後にコピー

追加の PHP 拡張機能を検索するには、apt search コマンドを使用します。

dpkg -l | grep php | tee packages.txt
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー

開発ツール

Xdebug やコード カバレッジ ツールなどの開発ツールも、同じパッケージ命名規則に従ってインストールできます。

この手順は運用環境では推奨されません。サーバー。

Xdebug

sudo LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php # Press enter to confirm.sudo apt update
ログイン後にコピー
ログイン後にコピー

PCOV

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
ログイン後にコピー
ログイン後にコピー

5. Web サーバーの統合

手順 3 でインストールしたサーバー API によっては、PHP 8.4 アップグレードを有効にするために Web サーバーの統合に追加の構成が必要になる場合があります。

PHP-FPM

PHP-FPM を使用する場合 (php8.4-fpm パッケージをインストールすることにより)、PHP と通信できるように Web サーバーを再構成する必要があります。更新されたソケット パス上の 8.4 FPM サーバー。


Apache: この設定変更は、PHP 8.4 設定ファイルをオンにすることで簡単に行えます:

sudo apt install php8.4-cli
ログイン後にコピー
ログイン後にコピー

Nginx: fastcgi_pass ディレクティブを古い PHP FPM ソケット パスから新しい PHP 8.4 に更新します。パス:

sudo apt install php8.4-cli libapache2-mod-php8.4
ログイン後にコピー
ログイン後にコピー

詳細については、Nginx ドキュメントを参照してください


Caddy サーバー: 新しい PHP 8.4 FPM サーバー ソケット パスを使用するように reverse_proxy ディレクティブを更新します:

sudo apt install php8.4-cli php8.4-fpm
ログイン後にコピー
ログイン後にコピー

詳細な設定については、「PHP で Caddy Server を使用する方法」を参照してください。詳細。

Apache モジュールとしての PHP

PHP が Apache モジュールとしてインストールされている場合、次のコマンドは以前の PHP モジュール (この例では 8.3) を無効にし、新しい PHP バージョンを有効にします。

php -v
ログイン後にコピー
ログイン後にコピー

以上がUbuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php.watch
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート