いくつかの異なるphp "ラッパー"(?)があります。それらの違いは何ですか?いくつかグーグルしようとしましたが、情報を見つけることができないようです。 (mod-phpはグーグル可能ではありません)。
なぜ私は他のものを選ぶのですか?
質問は少し奇妙ですが、PHPだけに質問するのか、それとも質問がより一般的であるのかは明確ではありません。
PHP側から簡単に概要を説明します。
まず、2つのプロトコル:
CGIスクリプトは、HTTP要求が来たときにサーバー側スクリプトを実行する方法です。これはPHPとは関係ありません
FastCGIは「より優れたCGI」です-CGIは遅いことが知られています。FastCGIは別のアプローチであり、結果ははるかに高速です。これもPHPとは関係ありません。
PHP関連するもの:
mod_php は、ApacheモジュールとしてPHP=を実行しています。つまり、PHPリクエストは、Apacheプロセスの下で実行され、それに伴うすべてが実行されます- Apacheプロセスは、Apache構成によって定義されます。PHPはApache権限で実行されます。
PHP-FPM はPHPのFastCGI実装です。 PHP-FPMはスタンドアロンFastCGIサーバーとして実行され、ApacheはApacheのモジュール(通常はmod_fcgidまたはmod_fastcgi)を使用してサーバーに接続します。個人的には、これはmod_phpとして実行するよりもはるかに優れていると思いますが、要件によって異なり、もう少し複雑です。この構成では、権限、プロセス関連のものなどすべてがPHP構成、PHPユーザーなど)の下で実行され、ApacheがPHPサーバーに関して;この構成では、PHPサーバーのプールを持ち、Apacheと物理的に異なるマシンにPHPサーバーを持つこともできます。 。これは、Apacheのモジュールを使用するのとほぼ同じ速さで、PHP構成をよりよく制御できるという利点があると言います。
SuPHP-これは主に、権限に関連するmod_phpのいくつかの問題に対処するために使用されました。 mod_php PHPスクリプトは、Apacheユーザー/グループの下で実行されます。mod_suphpは、別のユーザーでスクリプトを実行できます。これを使用したことはありません。PHP-FPMの方がはるかに優れているはずです。
だから基本的に: