- ベストアンサー
モジュール特化の機能とは?
CGI版とモジュール版の違いはインストールのやり方だろうということは何となく知っています。 しかしインストール後何が違ってくるのか分かりません。 あるプロバイダのHPで 「CGI版につきモジュール特化の機能は使えません。」という記述を見たのですが、何がモジュール特化なのか分かりません。 何がどう使えないのか教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
ごめんなさい。 確かに肝心なことを答えていませんでしたね。 LDAPとか、画像処理関数などの一部は、それらのモジュールを含んで再コンパイルしなければならない様で、これらの様な機能は使えないのではないでしょうか(でも、これらの機能はモジュール版でも対応していないところが多いようです) 私が今まで使った限りでは、それらの機能を使ったことがないので、無くても特に困らないと思います。 これ以上の具体的な相異点はちょっとわからないです。他の方の回答を待ってみましょう。ごめんなさい。 >ソースを書く時は特に意識する必要はない、と思ってて問題ないですか? 私は特に気にしたことがないです。下のリンクでマニュアルを見てみると、特殊な機能は、○○のオプションをつけて再コンパイルとか、○○がインストールされている必要があります。とか書かれている関数については、簡単なサンプルプログラムを作って、動くかどうか調べてからそれを使う様にしています。
その他の回答 (1)
CGIというのは、簡単に言うと、PHPを実行するプログラムが別にあり、Httpサーバからそのプログラムを呼び出して、内容を取得して表示します。 モジュールは、Httpサーバの機能の一部とすることが出来ます。 本来PHPは、モジュール版で最適化して動くので、CGI版はあまり推奨されていなかったような気がします。 CGI版とモジュール版の違いは、主にスピードです。 PHPの利点の一つとしてはPerlの様なCGIと比べて、負荷が少なく、同時に複数の処理を行っても重くなりにくい特徴を持っています。これはHttpサーバに組み込まれている故の特徴です。 対してCGIは、Perl等の一般的にCGIと同じ原理で動くので、一つのスクリプトを呼び出すたびにphpと言うプログラムを呼び出して、その実行された結果を取得して画面に表示します。その為、スクリプトごとに別々のプログラムが呼ばれるため、その際のスピードがネックになったり、同時に複数のリクエストがあったりすると、どんどん重くなっていくという特徴を持っています。 反対にCGIの利点としては、現在のHttpサーバの設定が最小限の変更だけで済み、対応していないサーバでもPHPを動かすことが出来ます。また、万が一スクリプトにエラーがあり、ハングアップしてしまったような場合でも、httpサーバとは別なので、システムが止まってしまうようなことがなくなります。(と言うかこんな事が起こる可能性があるようなスクリプトは実行しては行けないのですが…)
お礼
さっそくの回答ありがとうございます。 Httpサーバの処理のやり方が違うだけということで、ソースを書く時は特に意識する必要はない、と思ってて問題ないですか? わざわざ「CGI版につきモジュール特化の機能は使えません。」って書いてあったもんだから「何が使えないんだろう。」と気になるんですが・・・
お礼
なるほど、わかりました。 どうもありがとうございました。