1

アプリケーションが CGI モードで実行できるとはどういう意味ですか? cmsmatrix.org でさまざまな CMS システムの機能をレビューしていたところ、「CGI モードのサポート」が機能としてリストされていました。Web アプリケーションを実行できるその他の「モード」は何ですか?

4

3 に答える 3

3

基本的に、CGI は Web サーバーが外部プロセスを実行し、その結果 (生成された HTML ページ、画像など) を取得し、それをクライアントに送り返すことを意味します。

これには、必要になるたびに外部プロセスを起動するため、大きなオーバーヘッドになる可能性があるため、大きな欠点があります。

また、外部プロセスを一度起動し、必要に応じて再利用する FastCGI もあります。

ただし、通常、言語は Web サーバーに直接統合されます。たとえば、Apache には、CGI 経由で perl スクリプトを実行する代わりに、perl スクリプトを実行するための mod_perl モジュールがあります。

于 2009-02-19T09:31:46.070 に答える
3

CGI は「Common Gateway Interface」の略で、Web アプリケーションの古いアーキテクチャです。CGI は、HTTP 要求から変数を配置し、CGI プロセスを fork/exec() することによって機能します。Unix ホストでうまく機能したため、Web 開発の初期に人気を博しました。Perl/CGI はこの時代に人気のあるアーキテクチャであり、言語としての Perl の人気に大きく貢献しました。

CGI の名声の主な主張は、多くの配管を必要としないため、ほとんどの Web サーバーで動作することです。主な欠点は、CGI スクリプトを開始する必要があるため (perl または他のインタープリターの開始が必要になる場合があります)、fork-exec プロセスが遅いことです。Windows では、新しいプロセスの生成は UNIX よりもはるかに遅いため、CGI はさらに非効率的です。

于 2009-02-19T09:24:49.673 に答える
1

CGIは、Web サーバーがサーバー上の実行可能ファイルを呼び出すために使用するプロトコルです。リクエストを受け取ると、リクエストに関する情報を cgi スクリプトに送信し、そのスクリプトの結果をブラウザに返します。

それに代わるものは fastcgi です。これは、Web サーバーがリクエストに応答するためにスクリプトではなく、プロセスにアクセスすることを意味します。ただし、通信プロトコルは同じです (名前の由来)。

于 2009-02-19T09:31:07.163 に答える