スキルアップを始める!

CGI(Common Gateway Interface)とは?PHPとの違いについて

Web(ウェブ技術関連)
Screenshot
Web(ウェブ技術関連)
この記事は約2分で読めます。

※記事中に広告情報を含みます。

\ワードプレスのスキルアップはこちら!/ WordPress入門読本

CGI(Common Gateway Interface)は、ウェブサーバーと外部プログラムが通信するための標準的な方法です。CGIを使用すると、ウェブサーバーが特定のリクエストを受け取った際に外部プログラム(通常はスクリプトやアプリケーション)を実行し、その結果をクライアントに返すことができます。以下に、CGIとPHPの違いを説明します。

CGI(Common Gateway Interface)とは

  1. 汎用性:
    • CGIは言語に依存しません。Perl、Python、C、Shell Scriptなど、任意のプログラミング言語でCGIスクリプトを作成できます。
    • CGIスクリプトは外部プログラムとして実行されるため、ウェブサーバーは各リクエストごとに新しいプロセスを生成します。
  2. パフォーマンス:
    • 各リクエストごとに新しいプロセスが生成されるため、オーバーヘッドが大きくなり、パフォーマンスが低下する可能性があります。
    • 特に高トラフィックなウェブサイトでは、プロセスの生成と終了の負荷が問題になることがあります。
  3. 実行方法:
    • CGIスクリプトはウェブサーバーの設定によって指定されたディレクトリ(通常は cgi-bin)に配置され、URLで呼び出されます。

PHP(Hypertext Preprocessor)とは

  1. 言語依存:
    • PHPは特定のスクリプト言語であり、サーバーサイドのスクリプティング言語として設計されています。
    • PHPスクリプトはHTMLと組み合わせて使用されることが多く、動的なウェブページを生成するのに適しています。
  2. パフォーマンス:
    • PHPは通常、モジュールとしてウェブサーバー(Apache、Nginxなど)に組み込まれて動作するため、各リクエストごとに新しいプロセスを生成する必要がありません。
    • このため、パフォーマンスが向上し、高トラフィックなサイトでも効率的に動作します。
  3. 実行方法:
    • PHPスクリプトは .php 拡張子のファイルとして保存され、ウェブサーバーはこれらのファイルを解析して実行します。
    • PHPコードはHTML内に直接埋め込むことができるため、動的なコンテンツ生成が容易です。

まとめ

  • CGI は言語に依存せず、外部プログラムとして実行されるため汎用性が高いが、パフォーマンスに課題があります。
  • PHP は専用のスクリプト言語であり、ウェブサーバーに組み込まれて動作するため、動的なコンテンツ生成とパフォーマンスに優れています。

用途や要件に応じて、どちらを使用するかを選択することが重要です。

URLをコピーしました!