PHP 8.0は、2020年11月26日にリリースされたPHP言語の重要な更新であり、既存のPHP7.4リリースから大きく飛躍しました。新しいPHPには、名前付き引数、共用体型、属性、コンストラクタープロパティの昇格、一致式、nullセーフ演算子、JITと型システムの改善、エラー処理、一貫性など、多くの新機能と最適化が含まれています。
次のチュートリアルでは、AlmaLinuxにPHP8.0をインストールする方法を学びます。 。
- 推奨OS: AlmaLinux8。
- ユーザーアカウント: sudo特権を持つユーザーアカウント またはrootアクセス(suコマンド) 。
オペレーティングシステムの更新
AlmaLinuxを更新します 既存のすべてのパッケージが最新であることを確認するためのオペレーティングシステム:
sudo dnf upgrade --refresh -y
チュートリアルでは、sudoコマンドを使用します およびsudoステータスがあると仮定 。アカウントのsudoステータスを確認するには:
sudo whoami
sudoステータスを示す出力例:
[joshua@localhost ~]$ sudo whoami
root
sudoユーザーアカウントをまだ設定しておらず、設定したい場合は、AlmaLinuxでSudoersにユーザーを追加する方法のチュートリアルにアクセスしてください。 。
rootアカウントを使用するには 、rootパスワードを指定して次のコマンドを使用してログインします。
su
PHP8.0リポジトリのインポート
現在、PHP 8.0はAlmaLinuxsAppStreamで機能していません。これは、PHP 8.0がまだ比較的新しく、RHELのリポジトリでチェーンをフィルタリングしていないためです。ただし、PHPは(Remi)からインストールできます。 リポジトリ、最新のPHP 8.0をデプロイし、着信PHP8.1を含む無料で使用できるサードパーティのリポジトリ。
最初のタスクは、(EPEL )をインストールすることです )リポジトリ。( Enterprise Linux用の追加パッケージ)の略です。 RHELファミリーおよびAlmaLinuxの新規ユーザー向けに、EPELにはエンタープライズLinuxで最も一般的に使用されるソフトウェアパッケージが含まれています。 。
EPELをインストールするには、次の(dnf)を使用します ターミナルコマンド:
sudo dnf install epel-release
出力例:
(Y)、と入力します 次に、(ENTER KEY)を押します。 続行します。
EPELリポジトリを追加したので、(Remiリポジトリ)を有効にします。 次のように:
sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm
出力例:
(Y)、と入力します 次に、(ENTER KEY)を押します。 続行します。
次に、(dnf)を使用します リポジトリリストを更新するコマンド:
sudo dnf update
(GPGキー)のインポートに関するクエリが端末に表示されます。 以下のRemiリポジトリの場合:
(Y)、と入力します 次に、(ENTER KEY)を押します。 続行します。
(Y)と入力するようにさらに2回求められることに注意してください さらに2回、GPGキーをインポートします。これは問題ありません。
次に、EPELリリースをアップグレードするように求められます:
(Y)、と入力します 次に、(ENTER KEY)を押します。 続行します。
これでEPELリポジトリが最新になり、チュートリアルの次の部分に進む準備が整いました。
PHP 8.0(Remi)リポジトリの有効化
PHP 7.2は、Remiのリポジトリを使用したRhel /AlmaLinuxへの標準インストールのデフォルトのPHP選択です。簡単なヒントは、(list.php)を使用することです。 使用可能なオプションとデフォルトを確認するコマンド。次のコマンドでこれを実行できます:
sudo dnf module list php
以下のような出力が得られます。 (d)に注意してください インストールするデフォルトのPHPのタグ:
上記のように、(d)タグはPHP 7.2の隣にあります。これをリセットして変更し、AlmaLinuxにPHP8.0をインストールする必要があります。 PHPリストをリセットするには、次のコマンドを使用すると簡単です。
sudo dnf module list reset php
次に、次のコマンドでPHP8.0を有効にします。
sudo dnf module enable php:remi-8.0 -y
完了後の出力例:
PHP8.0をインストールする
Remi PHPリポジトリを追加し、PHP 8.0をAlmaLinuxシステムのデフォルトバージョンとして有効にしたので、次のコマンドを使用してPHP8.0をインストールできます。
sudo dnf install php
出力例:
(Y)、と入力します 次に、(ENTER KEY)を押します。 続行します。
PHP 8.0で最も一般的に使用される拡張機能をインストールする場合は、次のコマンドを使用します。
sudo dnf install php-cli php-fpm php-curl php-mysqlnd php-gd php-opcache php-zip php-intl php-common php-bcmath php-imap php-imagick php-xmlrpc php-json php-readline php-memcached php-redis php-mbstring php-apcu php-xml
注:これはオプションではないオプションを削除してください。
出力例:
(Y)、と入力します 次に、(ENTER KEY)を押します。 続行します。
これでPHP8.0がインストールされ、拡張機能は次のコマンドでバージョンを確認します。
php -v
出力例:
PHP 8.0.10 (cli) (built: Aug 24 2021 15:40:40) ( NTS gcc x86_64 )
Copyright (c) The PHP Group
Zend Engine v4.0.10, Copyright (c) Zend Technologies
with Zend OPcache v8.0.10, Copyright (c), by Zend Technologies
PHP-FPMはAlmaLinuxではデフォルトで有効になっていません。システムの起動時にPHP-FPMを有効にして開始するには、次の(systemctl)を使用します。 コマンド:
sudo systemctl enable php-fpm && sudo systemctl start php-fpm
(シンボリックリンク)を正常に有効にする例 :
Created symlink /etc/systemd/system/multi-user.target.wants/php-fpm.service → /usr/lib/systemd/system/php-fpm.service.
ここで、LEMPインストールの他の要件のステータスを確認する場合と同様に、次の(systemctl)を使用します。 ステータスをチェックしてすべてが機能していることを確認するターミナルコマンド:
systemctl status php-fpm
エラーがない場合は、次の出力が表示されます。
PHP8.0のPHP-FPMインストール
(www-data)を使用するDebian/UbuntuへのPHP-FPMインストールとは異なり ユーザーの場合、これはRHELファミリのインストールには当てはまりません。デフォルトでは、AlmaLinuxでは、PHP-FPMサービスは(Apache)で実行されるように設計されています。 ユーザー。Nginxを使用しているため正しくありません。これを修正する必要があります。
まず、次の(www.conf)を開きます 構成ファイル:
sudo nano /etc/php-fpm.d/www.conf
次に、(Apache)を置き換えます (Nginx)のユーザーとグループ ユーザーとグループ:
保存するには、(CTRL + O)を押します 次に、(CTRL + X)を終了します 。
ここで、PHP-FPMサービスをリロードまたは再起動します:
sudo systemctl restart php-fpm