私はphpをApacheモジュールとしてロードすることの正確な意味/目的と残りを理解しようとしています。
php を apache モジュールとしてインストールすると、正確にはどうなりますか? たとえば、php-ini ファイルの読み取りは、php リクエストが来るたびに行われますか?それとも、php モジュールが単独で読み込まれるときに行われますか?
私はphpをApacheモジュールとしてロードすることの正確な意味/目的と残りを理解しようとしています。
php を apache モジュールとしてインストールすると、正確にはどうなりますか? たとえば、php-ini ファイルの読み取りは、php リクエストが来るたびに行われますか?それとも、php モジュールが単独で読み込まれるときに行われますか?
php.ini は、PHP モジュールが mod_php、FastCGI、および FPM の両方で読み込まれるときに読み込まれます。通常の CGI モードでは、実行時に構成ファイルを読み取る必要があります。これは、事前にフォークされたプロセスがまったくないためです。
PHP を Web サーバー内のモジュールとして実行することの唯一の本当の利点は、構成が簡単になることだと思います。FastCGI または FPM モードで実行し、(フォークの代わりに) スレッド化またはイベント化された Apache を使用できる場合、または Apache を完全に破棄できる場合は、パフォーマンスが大幅に向上します。
このリンクが役立つ場合があります: http://2bits.com/articles/apache-fcgid-acceptable-performance-and-better-resource-utilization.html
結論
純粋な速度が求められている場合は、mod_php を使用してください。
ただし、リソースの使用と効率を向上させるには、fcgid への移行を検討してください。
Apache モジュールの場合、モジュールのロード時に php.ini が読み込まれます。PHP CGI は、他のシェル スクリプトと同様に、php インタープリター実行可能ファイルを使用します。各呼び出しに関係する状態がないため、CGI の場合は構成ファイルを毎回読み取る必要があります。