【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
sudo a2dismod mpm_prefork
次に、Event関連のモジュールを有効化。
sudo a2enmod mpm_event
sudo a2enmod proxy_fcgi
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/ 以下
/etc/php/8.1/fpm/conf.d/ 以下
にあります。
コメント