PHPは、最も広く使用されているサーバー側プログラミング言語の1つです。 WordPress、Magento、Laravelなどの多くの人気のあるCMSとフレームワークはPHPで書かれています。
PHP 8.0は、PHP言語の最新のメジャーリリースです。いくつかの重大な変更、パフォーマンスの改善、および名前付き引数、JITコンパイラ、共用体型、一致式などの多くの新機能が導入されています。
この記事では、Ubuntu20.04にPHP8をインストールし、NginxおよびApacheと統合する方法を説明します。
執筆時点では、デフォルトのUbuntu20.04リポジトリにはPHP7.4バージョンが含まれています。 ondrej/phpPPAリポジトリからPHPをインストールします。
PHP 8にアップグレードまたはインストールする前に、アプリケーションがPHP8をサポートしていることを確認してください。
同じ手順がUbuntu18.04と、Kubuntu、Linux Mint、ElementaryOSを含むすべてのUbuntuベースのディストリビューションに適用されます。
PHPリポジトリの有効化#
Debian開発者のOndřejSurýは、複数のPHPバージョンを含むリポジトリを管理しています。リポジトリを有効にするには、次を実行します:
sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
PPAを有効にすると、PHP8をインストールできます。
Apacheを使用したPHP8.0のインストール#
ApacheをWebサーバーとして使用している場合は、PHPをApacheモジュールまたはPHP-FPMとして実行できます。
PHPをApacheモジュールとしてインストールする#
PHPをApacheモジュールとしてインストールするのは簡単な作業です:
sudo apt update
sudo apt install php8.0 libapache2-mod-php8.0
パッケージがインストールされたら、PHPモジュールのApacheを再起動してロードします。
sudo systemctl restart apache2
PHP-FPMを使用してApacheを設定する#
Php-FPMは、PHP用のFastCGIプロセスマネージャーです。次のコマンドを実行して、必要なパッケージをインストールします。
sudo apt update
sudo apt install php8.0-fpm libapache2-mod-fcgid
デフォルトでは、PHP-FPMはApacheで有効になっていません。有効にするには、次を実行します:
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php8.0-fpm
変更を有効にするには、Apacheを再起動します。
systemctl restart apache2
Nginxを使用したPHP8.0のインストール#
Nginxには、PHPファイルの処理に対する組み込みのサポートがありません。 PHPファイルの処理にはPHP-FPM(「fastCGIプロセスマネージャー」)を使用します。
次のコマンドを実行して、PHPおよびPHPFPMパッケージをインストールします。
sudo apt update
sudo apt install php8.0-fpm
インストールが完了すると、FPMサービスが自動的に開始されます。サービスのステータスを確認するには、
を実行しますsystemctl status php8.0-fpm
● php8.0-fpm.service - The PHP 8.0 FastCGI Process Manager
Loaded: loaded (/lib/systemd/system/php8.0-fpm.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2020-12-03 16:10:47 UTC; 6s ago
これで、Nginxサーバーブロックを編集し、次の行を追加して、NginxがPHPファイルを処理できるようになります。
server {
# . . . other code
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.0-fpm.sock;
}
}
新しい構成が有効になるように、Nginxサービスを再起動することを忘れないでください:
sudo systemctl restart nginx
PHP拡張機能のインストール#
PHP拡張機能は、PHPのコア機能を拡張するコンパイル済みライブラリです。拡張機能はパッケージとして利用可能であり、apt
を使用して簡単にインストールできます :
sudo apt install php8.0-[extname]
たとえば、MySQLおよびGD拡張機能をインストールするには、次のコマンドを実行します。
sudo apt install php8.0-mysql php8.0-gd
新しいPHP拡張機能をインストールした後、セットアップに応じて、ApacheまたはPHPFPMサービスを再起動することを忘れないでください。
PHP処理のテスト#
WebサーバーがPHP処理用に適切に構成されているかどうかをテストするには、info.php
という名前の新しいファイルを作成します。 /var/www/html
内 次のコードのディレクトリ:
<?php
phpinfo();
ファイルを保存してブラウザを開き、http://your_server_ip/info.php
にアクセスします。 。
次のようなPHP構成に関する情報が表示されます。