PHPのバージョンアップ作業中

PHPのバージョンアップのために、別サーバーを立ち上げて従来システムの動作確認をしている。

1.バージョン、パス等の確認

まずは、phpが正しいバージョンを参照しているかの確認。

php -v

ライブラリ等のパスは、以下で確認。

php -i | grep path

2.PEAR

何でcomposerじゃないのかというと、元プログラムの関係で、pearを使っている。

インストールされているパッケージの確認。

pear list

PEAR設定の確認は以下。

pear config-show

パッケージのファイルの確認は以下。HTTP_Request2の場合。

pear list-files HTTP_Request2

Apache2.4とPHP7.4の連携

動作中のシステムを、そろそろ各種バージョンアップした新サーバーに移す作業に入ったが、新サーバーで、ApacheからPHPが動作しなかった。

新サーバーのバージョン

CentOS8.2
Apache2.4.37
PHP7.4.10

原因

以前のApacheのデフォルトが 、MPM prefork だったのが、今回は MPM event になっていた。

(確認)

/etc/httpd/conf.modules.d/00-mpm.confの中を見ると、ロードするモジュールがMPM eventのモジュールに変わってる。

対応

以前のpreforkにするということも考えられるが、MPM eventで突き進むことにした。

連携するために追加でやったことは、以下。

1.php-fpmの有効化

php-fpmをサービス起動するように設定

systemctl enable php74-php-fpm
systemctl start php74-php-fpm

2.mod_proxy_fcgiを有効化

今までは、/etc/httpd/conf.modules.d/00-proxy.confは、すべてコメントアウトしていたが、以下を有効にする。

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so