CGI(Common Gateway Interface)は、 Web サーバーが外部プログラムを実行し、その結果を Web ページとして返すための仕組み です。
静的な HTML だけではできない 「動きのあるページ」を作るために生まれた、Web の初期からある技術です。
CGI をひとことで言うと?
「Web サーバーがプログラムを動かして、その出力をそのままブラウザに返す仕組み」
これだけです。
CGI が使われると何ができる?
HTML だけではできない、 “動的な処理” が可能になります。
たとえば:
- フォームの入力を受け取る
- 計算結果を表示する
- データベースから情報を取り出す
- ログイン処理を行う
など、Web アプリの基本的な動作は CGI で実現できます。
CGI の動作の流れ(とてもシンプル)
- ブラウザが Web サーバーにアクセス
- Web サーバーが CGI プログラムを起動
- プログラムが HTML を出力
- そのままブラウザに表示される
つまり、 プログラムが print した内容がそのまま Web ページになる という仕組みです。
CGI で使える言語
CGI は特定の言語に依存しません。 実行できれば何でも使えます。
- Python
- Perl
- Ruby
- PHP
- C / C++
- シェルスクリプト
など、ほぼ何でも CGI として動かせます。
CGI のメリット
- 仕組みがとても単純
- Web の基礎を理解しやすい
- どんな言語でも使える
- 小規模なツールに向いている
CGI のデメリット
- アクセスのたびにプログラムが起動するため遅い
- 大規模なサイトには向かない
- 現代ではより効率的な仕組み(FastAPI、Flask、PHP-FPM など)が主流
現代での位置づけ
今では CGI をそのまま使うケースは減りましたが、
- Web の仕組みを学ぶ
- 小さなツールを作る
- レガシー環境の保守
といった用途では、今でも十分役に立ちます。
まとめ

- CGI は「Web サーバーがプログラムを実行して結果を返す仕組み」
- 動的な Web ページを作るための基本技術
- 仕組みがシンプルで学習向け
- 現代ではより高速な仕組みが主流



人気ブログランキング ブログパーツ