Image

ナレッジベース → Debian 12 への複数バージョンの PHP (7.3、7.4、8.1、8.2) のインストール

[仮想サーバー]
公開日: 05.10.2023

必要なバージョンのPHPをインストールするタスクが頻繁に発生しますが、デフォルトでは新しいバージョンや古いバージョンがインストールされることがあります。また、1台のサーバーで複数のPHPバージョンを同時にインストールして使用する必要がある場合もあります。

デフォルトではrootユーザーでインストールしますが、通常のユーザーの場合はsudoを使用してください。

1. 必要なリポジトリをインストールします:

apt update
apt upgrade
apt install -y apt-transport-https lsb-release ca-certificates wget 
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list
apt update

2. PHP 8.2バージョンが必要な場合、次のコマンドでインストールします:

apt install php8.2

2.1 PHP 8.1をインストールする場合:

apt install php8.1

2.2 PHP 7.4をインストールする場合:

apt install php7.4

2.3 PHP 7.3をインストールする場合:

apt install php7.3

このようにして、すべてのバージョンがサーバー上で同時に使用できるようになります。各PHPバージョンには対応するモジュールをインストールし、必要に応じて設定ファイルを編集します。

複数のPHPを同時にインストールすることで、異なる要件を持つ複数のプロジェクトを処理できます。各PHPバージョンごとに専用のphp-fpmをインストールし、どのポートで動作させるかを指定し、そのパラメータをnginxの設定ファイルに記述することができます。

3. PHP 8.2用のphp-fpmとPHPモジュールをインストールする例:

apt install php8.2 php8.2-gd

3.1 PHP 8.1用のphp-fpmとPHPモジュールをインストールする例:

apt install php8.1 php8.1-gd

4. バージョンを確認したり、スケジューラを使用したりする際には、それぞれのバージョンのパスを使用します:

/usr/bin/php8.2 /var/www/domain.tld/cron-file.php

または

/usr/bin/php8.1 /var/www/domain.tld/cron-file.php

5. 複数のPHPバージョンが存在する場合、デフォルトのバージョンを切り替えるには、以下のコマンドを使用します:

update-alternatives --set php /usr/bin/php8.1




No Comments Yet