【Ubuntu/Linux Mint】Apache2のPHP、preforkからeventに変更する手順のメモ。

UbuntuにApache・PHPをインストールすると、たぶんデフォルトでは PHP は prefork + mod_php で動作するようになっている。これを event + php-fpm に変更したい。

この変更手順をいつも忘れてしまうので、メモ。

まずは Apache2 と PHP、必要なPHPのモジュールをインストール。

sudo apt install php php-fpm

Ubuntu 22.04 / Linux Mint 21.1の場合、これで Apache2 周りを含めた以下のパッケージ:

apache2, apache2-bin, apache2-data, apache2-utils, libapr1, libaprutil1, libaprutil1-dbd-sqlite3, libaprutil1-ldap, liblua5.3-0, php-common, php8.1, php8.1-cli, php8.1-common, php8.1-opcache, php8.1-readline, libapache2-mod-php8.1, php8.1-fpm

がインストールされると思います。

インストールされるPHPのバージョン(今回ならば 8.1)は OS のバージョンによって異なります。

インストールが完了したら、Apache2は自動的に起動される筈。

前述したように初期状態では prefork + mod_php で動いているので、これを event + php-fpm に変更します。手順は以下のとおり。

最初に、現在稼働中のPHP周りのモジュールを無効にする。

sudo a2dismod php8.1
sudo a2dismod mpm_prefork

次に、Event関連のモジュールを有効化。

sudo a2enmod mpm_event
sudo a2enmod proxy_fcgi

以下は初期状態で有効化されている筈だけれど、もしそうでなかったら…

sudo a2enmod setenvif

そして、PHP-fpmの設定を有効化。自分的には、これ忘れがち。

sudo a2enconf php8.1-fpm

Apacheを再起動。

sudo systemctl restart apache2

これでひとまず動くのではないかな。

PHP-fpm の設定ファイルは、

/etc/php/8.1/fpm/php.ini および
/etc/php/8.1/fpm/conf.d/ 以下

にあります。

カテゴリ: