PHPのCGI版、モジュール版とは…

一般に、PHPに関して言うCGI版、モジュール版の違いは、(特にレンタルサーバー関連で使われる場合)WebサーバーのApacheに関する動作の違いを言うことが多いです。
ここでは、上記の説明を簡単に行いたいと思います。

CGI版

CGI版と言われるものは、WebサーバーであるApacheとは別プロセスで動作させるPHPという意味合いが強いです。
実際に、CGIとは、Common Gateway Interfaceの略で、Webサーバーが、Webブラウザからの要求に応じて、プログラムを起動するための仕組みを言います。

つまり、ここでは、

プログラムを起動する=PHPを起動する

という意味となります。


ここで、Windows版のApacheのhttpd.conf の設定例をあげて、その違いを説明してみましょう。

ScriptAlias /php/ "c:/php/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php/php-cgi.exe"


この設定例は、

phpという拡張子のファイルを、php-cgi.exeという実行ファイルに渡して実行しなさい。

という設定になっています。
※Apacheのセッティングを行ったことがある方には、この設定だけで意味が分かられると思います。

モジュール版

逆に、モジュール版では、以下のような設定例となります。

LoadModule php5_module "c:/php/php5apache2.dll"
AddType application/x-httpd-php .php
PHPIniDir "C:/php"

この設定例は、

phpという拡張子のファイルを、php5apache2.dllというDLLライブラリに渡してい実行しなさい。

という意味ですから、WebサーバーであるApacheと同じプロセスで実行されることになります。
※Windowsのプログラミングを行ったことがある方には、このDLLファイルが何を意味するかよく理解できるのではないでしょうか。

つまり、モジュール版と言われるものは、WebサーバーであるApacheと同じプロセスで動作させるPHPという意味合いが強いです。

一般に、CGI版PHPとモジュール版PHPでは、どちらが早いかという記事を多くみます。以降の参考記事では、そのあたりがきれいに紹介されています。
ほとんどの場合、モジュール版PHPが動作が速いとされています。

参考記:「PHP における「モジュール版」と「CGI 版」の比較 + WordPress の適用例

しかしながら、レンタルサーバーでは、ほとんどがCGI版PHPが採用されています。
これは、どういう意味があるでしょう。

答えは、上記の動作の仕組みの違いによります。

レンタルサーバーは、いろんな人の寄り合い所帯になっていて、悪意があるなしにかかわらず、PHPなどのスクリプトの暴走などで簡単にシステムが不安定になります。

例えば、モジュール版PHPが動作可能な環境で、あるユーザのPHPスクリプトが暴走しているとしましょう。
そうしたとき、管理者は、CPUの使用率が急激に上がったので対処しようとするでしょう。その時、暴走しているプロセスを停止させることでシステム全体の安定を確保しようと思いますが、モジュール版では、Apacheと同じプロセスとなりますから、Apacheが暴走しているように見えるわけです。
また、さらにApacheは、共有しているすべてのユーザが利用しているものでもありますから、安易にそのプロセスを停止するわけにいきません。

CGI版では、そのような問題を解決してくれます。CGI版は、別のプロセスですから、暴走しているスクリプトがあれば、そのプロセスを停止させれば良いことになります。

このように安定性を確保するためにCGI版を提供しているケースがほとんどのようです。

関連記事:phpモジュール版を使いたい方へのおすすめは…

この記事を読んだ人は次の記事も読んでいます:



口コミ・評判



口コミ・評判を投稿 :

お名前 *

メールアドレス *
(口コミ・評判欄には、表示されませんが入力が必要です。)

サイトアドレス

*


KDDI CloudCore VPSが新規受付の完全再開!!


人気のあまり新規受付停止中でしたが、
新規受付再開しました。 :)

12ヶ月契約 月額¥1,470 → キャンペーン価格 月額¥945 のキャンペーン実施です。 :D

  • 仮想化技術 : KVM になりました。
  • CPU : 物理 1 core になりました。
  • メモリ : 2GB になりました。
  • ディスク : 100GB になりました。
  • 回線 : 100MBPS共有 になりました。
  • 初期設定費: 無料 になりました。

CloudCore VPSの詳細については、 こちらのKDDI CloudCore VPSのサイト CloudCore VPSのサイトへへどうぞ。(お試し期間が10日あります。)

さくらインターネットでデータベース機能強化!!


さくらインターネット
データベース大幅機能アップ実施!!
もちろん既に利用している方もこれから借りる方も全ての利用者対象です。 :)

  • データベース作成数を大幅に増量
    スタンダード 1個 → 20個
    プレミアム  1個 → 50個
    ビジネス   2個 → 100個
    ビジネスプロ 3個 → 200個
  • ストレージエンジン「InnoDB」の追加提供
  • データベースサーバのスペック増強 (従来比5倍のパフォーマンスを実現)

さくらインターネットのお申し込みは、 こちらのさくらインターネット サイト さくらインターネットのサイトへからどうぞ。(お試し期間が14日あります。)

サイトメニュー(カテゴリ)




一押し!!キャンペーン情報

  • 共有サーバー
  • VPS
  • マネージド
  • ドメイン

その他のキャンペーン情報は、こちらをご確認ください。





主なラインキング

共有レンタルサーバー& みんなの評価

みんなの評価は、このサイトを利用されている方の評価平均でランキングされています。

各レンタルサーバーの機能概要一覧は、 こちらからどうぞ


VPS& みんなの評価

みんなの評価は、このサイトを利用されている方の評価平均でランキングされています。

各VPS機能概要一覧は、 こちらからどうぞ


マネージドサーバー& みんなの評価

みんなの評価は、このサイトを利用されている方の評価平均でランキングされています。

各マネージドサーバー機能概要一覧は、 こちらからどうぞ


ドメインレジスタ& みんなの評価

みんなの評価は、このサイトを利用されている方の評価平均でランキングされています。

各ドメインレジスタの主要ドメイン価格一覧は、 こちらからどうぞ

: この表示がある価格は、キャンペーン価格になります。

Valid XHTML 1.0 Transitional


  • はてなブックマークへ追加するはてな登録数
  • Yahoo!
  • Livedoor Clip
  • FC2
  • Nifty Clip
  • POOKMARK. Airlines
  • Buzzurl(バザール)
  • Choix
  • newsing
  • del.icio.us
ページトップへ