開発者ドキュメント

Ubuntu18.04でMPMイベントとPHP-FPMを使用してApacheHTTPを設定する方法

著者はCOVID-19救済基金を選択し、 Write forDOnationsプログラムの一環として寄付を受け取りました。

序章

Apache HTTP Webサーバーは、さまざまな環境で動作し、さまざまなニーズを解決するために、何年にもわたって進化してきました。 他のWebサーバーと同様に、Apache HTTPが解決しなければならない重要な問題の1つは、httpプロトコル要求を処理するためにさまざまなプロセスを処理する方法です。 これには、ソケットを開き、要求を処理し、接続を一定期間開いたままにし、その接続を介して発生する新しいイベントを処理し、特定の言語(PHP、Perl、Pythonなど)で作成されたプログラムによって生成されたコンテンツを返すことが含まれます。 。 これらのタスクは、マルチプロセッシングモジュール(MPM)によって実行および制御されます。

Apache HTTPには、次の3つの異なるMPMが付属しています。

MPMイベントモジュールは、ApacheHTTPWebサーバーで使用できる高速マルチプロセッシングモジュールです。

PHP-FPM は、PHP用のFastCGIプロセスマネージャーです。 FastCGIプロトコルは、アプリケーションとApacheHTTPなどのWebサーバーの間にあるプロトコルであるCommonGateway Interface(CGI)に基づいています。 これにより、開発者はWebサーバーの動作とは別にアプリケーションを作成できます。 プログラムはプロセスを独立して実行し、このプロトコルを介して製品をWebサーバーに渡します。 アプリケーションによる処理が必要な新しい接続ごとに、新しいプロセスが作成されます。

ApacheHTTPのMPMイベントをPHPFastCGIProcess Manager(PHP-FPM)と組み合わせることにより、Webサイトはより高速にロードし、より少ないリソースを使用しながらより多くの同時接続を処理できます。

このチュートリアルでは、デフォルトのマルチプロセッシングモジュールをプリフォークからイベントに変更し、PHP-FPMプロセスマネージャーを使用して従来の[ ApacheHTTPのX231X]

モバイルバージョンを終了