PHP(LAMP環境)について情報アップデートしてみた
1. はじめに ウェブアプリケーションのプラットフォームというと、LAMP環境が一般的ですが、一昔前とは色々変わっているようなので、情報アップデートのために調べてみました。と言っても今回は最後のPのPHPにフォーカスしてみます。 ※他は次を想定: [L] Alma linux, [A] Apahce, [M] MariaDB 2. mod_phpとphp-fpm 以前までWeb(Apache)でPHPを利用する場合、mod_phpというApacheモジュールを利用していましたが、最近ではphp-fpmというものに変わっており、各ディストリビューションのデフォルト設定もこちらを使うように変わっているようです。 mod_php Apacheのモジュールとして動作し、PHPはApahceのプロセスが処理 php-fpm 公式の説明は こちら 。 公式あるあるで分かりづらいですが、ざっくりいうとPHPのアプリケーションサーバ ※Javaで言うところのTomcatみたいなもん? その他、色々比較 mod_php php-fpm デフォルト設定 RHEL7迄 左記以降 スレッド対応 非対応 対応 MPMとの関係※ prefork event 処理プロセス Apache php-fpm メモリ使用 大 小 用途想定 個人・小規模 企業・大規模 ※ MPM(Multi-Processing Module) とはApacheがリクエストを処理する方式定義 3. どちらで動作してるか確認するには? Apacheがどちらで動作してるか確認するには、 phpinfo で確認できます。 mod_php php-fpm Server API Apache 2.0 Handler FPM/FastCGI 設定は下記で確認できます。 /etc/httpd/conf.d/php.conf mod_php <FilesMatch \.php$> SetHand...