[Apache] FastCGIの予備知識

以下の記事が分かりやすかったので覚書リンク。

nginx と PHP-FPM の仕組みをちゃんと理解しながら PHP の実行環境を構築する – Qiita
https://qiita.com/kotarella1110/items/634f6fafeb33ae0f51dc

CGI

  • Webサーバー上でPHP (動的コンテンツを生成する言語) を動作せるための仕組み。

FastCGI

  • CGIはユーザーから要求がある度にプロセスの生成と破棄を行う。
  • FastCGIは初回リクエスト時に起動したプロセスをメモリ上へ保持を行い、次回リクエストに対してはそのメモリに保持したプロセスの実行を行う。

Apacheの場合

  • PHPにはモジュール版とCGI版の二種類ある。
  • ApacheではモジュールとしてPHPスクリプトを起動することができる。
  • PHPをインストールすると自動的にPHPモジュールもインストールされ、 Apacheはデフォルトでそのモジュールを読み込む。
  • モジュール版はCGI版の逆で、WebサーバーのプロセスのなかでPHPが実行される。
  • CGI版は実行ファイル形式とも呼ばれ、Webサーバーとは別のプロセスで実行される。