W2techsの調査によると、サーバー側のプログラミング言語としてPHPを使用しているすべてのWebサイトの79%があります。その上、最初のリリースから4年後、PHPバージョン7を使用しているWebサイトの67%があります。 PHPは、Webサイトで最も人気のあるサーバー側プログラミング言語の1つです。いくつかの注目すべきWebアプリケーションは、WordPress、Magento Eコマース、Wikipedia、DrupalなどのPHPに基づいています。
現時点で、PHPバージョン8がリリースされ、名前付き引数、共用体型、属性、コンストラクタープロパティの昇格、一致式、nullsafe演算子、JIT、型システム、エラー処理、一貫性の改善など、追加の機能と改善が加えられています。 。
このガイドでは、RockyLinuxサーバーにPHP8をインストールする方法を学習します。
- *root権限を持つユーザー。ユーザーが`sudosu`コマンドを実行してroot権限を取得できることを確認するか、rootユーザーのみを使用できます。
EPELおよびRemiリポジトリの追加RockyLinux
デフォルトのRockyLinuxリポジトリはPHPパッケージを提供しますが、PHPバージョン8.xは提供しません。 PHPバージョンのPHP8.xの場合、REMIリポジトリからインストールできます。
1. REMIリポジトリを追加する前に、次のコマンドを実行してEPEL(Enterprise Linux用の追加パッケージ)リポジトリを追加する必要があります。
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
' yと入力します 'を押して'Enter 'EPELリポジトリを追加します。
2.次に、以下のコマンドを実行して、Rocky Linux 8 / CentOS8/またはRHEL8のREMIリポジトリを追加します。
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
' yと入力します 'を押して'Enter 'もう一度REMIリポジトリをインストールします。
3. EPELおよびREMIリポジトリのインストールが完了したら、次のコマンドを実行して、RockyLinuxシステムで使用可能なリポジトリのリストを確認します。
sudo dnf repolist
次に、以下と同様の出力が得られることを確認してください。
<前>レポIDレポ名appstreamロッキーのLinux 8 - AppStream
baseosロッキーのLinux 8 - Enterprise Linuxの8のためのBaseOS
EPELエクストラパッケージ - のためのx86_64版
EPEL-モジュラーエクストラパッケージEnterprise Linux Modular 8-x86_64
extras Rocky Linux8-Extras
remi-modular EnterpriseLinux8用のRemiのモジュラーリポジトリ-EnterpriseLinux8用のRemiのモジュラーリポジトリ-x86_64
remi-safe / pre>
PHP8.0Remiリポジトリを有効にする
この段階では、PHP 8.xのREMIリポジトリを有効にし、PHPのモジュールをAppStreamリポジトリではなくREMIリポジトリに切り替えます。
1.続行する前に、以下のコマンドを使用してPHPモジュールストリームをリセットします。
sudo dnf module reset php
Remiリポジトリを追加した後に初めてdnfコマンドを実行すると、Remiリポジトリのgpgキーを受け入れるように求められます。
'yと入力します 'を押して'Enter 'Remigpgキーを追加します。
2.次に、次のコマンドを使用して、システムで使用可能なPHPモジュールを確認します。
sudo dnf module list php
以下に示すように、2つのPHPストリームリポジトリがあります。デフォルトのRockyLinuxAppStreamリポジトリとRemiモジュラーリポジトリ。 PHPのデフォルトのインストールは、AppStreamリポジトリからのPHP7.2です。
ロッキーのLinux 8 - PHP 7.2 />
名前ストリームプロファイルの概要[D]共通[D]、develの、最小限のPHPスクリプト言語の
PHP 7.3共通[D]、develの、最小のPHPスクリプト言語
PHP 7.4の一般的な[D]、develの、最小限のPHPスクリプト言語
Enterprise Linuxの8つのためのレミのモジュラーリポジトリ - x86_64版
名前のストリームプロファイルの概要
PHP remi-7.2 common [d]、devel、minimalPHPスクリプト言語
php remi-7.3 mi /> php common [d]、devel、minimum ]、devel、minimumPHPスクリプト言語
php remi-8.0 [e] e] e] int [n] ef [x]無効、[i]インストール済み
3.次に、コマンドを使用して、PHPパッケージのデフォルトのインストールをRemiリポジトリPHP8.xに変更します。
sudo dnf module enable php:remi-8.0
' yと入力します 'を押して'Enter 'PHP 8.x Remiリポジトリを有効にすると、RockyLinuxにPHP8をインストールする準備が整います。
RockyLinuxへのPHP8.0のインストール
1. PHPパッケージをインストールするには、以下のコマンドを実行します。
sudo dnf install php
次に、「 y」と入力します 'を押して'Enter 'PHP8xをインストールします。
2.インストールが完了したら、次のコマンドを使用してPHPのバージョンを確認します。
php --version
次に、以下と同様の出力PHP8.0が得られることを確認してください。
PHP 8.0.9(cli)(ビルド:2021年7月29日12:53:58)(NTS gcc x86_64)
著作権(c)PHPグループ
Zend Engine v4.0.9、Copyright( c)Zend Technologies
Zend OPcache v8.0.9、著作権(c)、ZendTechnologiesによる
RockyLinuxへのPHP-FPM8.0のインストール
PHP-FPM(FastCGI Process Manager)は、PHPFastCGIの代替で最も人気のある実装です。プール管理、制限、すべてのプールの制限などの追加機能が付属しています。PHP-FPMは、トラフィックが少ないWebサイトと多いWebサイトの両方に適しています。特にトラフィックの多いWebサイトの場合、php-fpmプール管理を使用して、Webサイトのパフォーマンス負荷を改善できます。
1. Rocky Linuxにphp-fpmをインストールするには、以下のDNFコマンドを実行します。
sudo dnf install php-fpm
'y'と入力します ' Enterを押します 'php-fpmパッケージをインストールします。
2.インストールが完了したら、php-fpmサービスを開始し、次のコマンドを使用して、起動のたびに自動的に実行できるようにします。
sudo systemctl enable --now php-fpm
これで、以下のような出力が表示されるはずです。
シンボリックリンク/etc/systemd/system/multi-user.target.wants/php-fpm.service→/usr/lib/systemd/system/php-fpm.serviceを作成しました。
3.次に、以下のコマンドを使用してphp-fpmサービスのステータスを確認します。
sudo systemctl status php-fpm
php-fpmが実行されている場合は、「アクティブ(実行中)」が表示されます。 '以下に見られるように。それ以外の場合は、「終了」などの出力が表示される可能性があります '。
? php-fpm.service-PHP FastCGIプロセスマネージャー
ロード済み:ロード済み(/usr/lib/systemd/system/php-fpm.service;有効;ベンダープリセット:無効)
アクティブ:アクティブ(実行中)Mon 2021-08-0207:58:33UTC以降; 8秒前
メインPID:3964(php-fpm)
ステータス:「接続を処理する準備ができました」
タスク:6(制限:11156)
メモリ:12.8M
CGroup:/system.slice/php-fpm.service
?? 3964 php-fpm:マスタープロセス(/etc/php-fpm.conf)
?? 3965 php-fpm:pool www
?? 3966 php-fpm:プールwww
?? 3967 php-fpm:プールwww
?? 3968 php-fpm:プールwww
-fp ?? 3969 php www
PHP拡張機能のインストール
Remiリポジトリは、新しいバージョンのPHP 8.xを提供するだけでなく、AppStreamリポジトリでは利用できないPHPの追加の拡張機能(php-imagick、php-mcryptなど)も提供します。
1.追加のPHP拡張機能をインストールするには、「dnf install」コマンドを使用し、その後に「php-extension」という名前を付けます。 '名前。
以下のサンプルコマンドを実行して、php-mcryptモジュールをインストールします。
sudo dnf install php-mcrypt
' yと入力します 'を押して'Enter 'php-mcrype拡張機能をインストールします。
2.さらに、複数のPHP拡張機能をインストールするには、次の形式を使用できます' php- {extension1、extension2、extension3、etc} '。
以下のコマンド例を実行して、複数のPHP拡張機能php-imagick、php-apcu、php-geoip、php-memcached、およびphp-zstdをインストールします。
sudo dnf install php-{imagick、apcu、geoip、memcached、zstd}
3.その後、次のコマンドを実行して、システムで使用可能なすべてのPHP拡張機能を確認します。
php -m
また、システムで使用可能な各PHPモジュールの名前が次のように表示されます。
apcu
bz2
calendar
...
geoip
zlib
zstd
[Zendモジュール]
Zend OPcache
さらに、「 grep」を使用できます '以下のようにphp拡張子名をフィルタリングするコマンド。
php -m | grep imagick
システムでphp-imagick拡張機能が利用できる場合は、次のような出力が表示されます。
imagick
そうしないと、空白の結果が表示されます。
おめでとうございます! RockyLinuxにPHP8.xをインストールする方法を学びました。必要に応じて、RemiリポジトリからPHPまたはPHP-FPMを追加の拡張機能とともにインストールできます。これで、PHPWebアプリケーションをデプロイする準備が整いました。また、インストールするPHPWebアプリケーションの要件を常に確認してください。