Webアプリ PHP 小ネタ

php --versionって万能じゃないんだな

phpで書かれたWebアプリがサーバー上に置かれています。 その中で設定ファイルを変更しないといけない場面が出てきました。 その時どこを開くのが正解でしょうか。
私は覚えているぞ 確かphpは沢山のバージョンがインストールできて実際に使っているphpの設定ファイルを変更しないといけないんよな
そこで実行したのが最初にも書いたこのコマンド
php --version
これで自分が現在使っているphpのバージョンがわかるはずだ
これではうまく設定が反映されません。

php --versionで見ているものは?

CLI → コマンドライン実行用のphpです。 PHP言語で書かれたファイルを実行するのがこのphp --versionでみれるphpです。 ではPHP言語で書かれたこのWebアプリもこのphpで実行されているのではないでしょうか。 開発環境等でphp artisan serveで開発サーバーを立てた場合、同じphpを利用します。 しかし今回のようにWebサーバーを自分で用意している場合にはこのCLI用のphpとは異なるphpを利用してWebアプリに組み込まれているPHP言語を実行します。

では使用しているphpはどこにあるの

実際に使われているphpは以下フォルダに置かれ、設定ファイルを変更する場合にはこのファイルを変更します。 /etc/php/X.X/fpm/php.ini この使われているphpのことを PHP-FPM(FastCGI Process Manager) といいます。 またnginx設定ファイルを見てみると
fastcgi_pass unix:/run/php/phpX.X-fpm.sock;
とかかれX.XバージョンのPHP-FPMを使うよう設定しています。 これで複数のバージョンのPHP-FPMが入っていてもnginxはどのバージョンを使えばいいか、迷うことなく判断できます。