ホームページ制作

CGI

CGI(Common Gateway Interface)はウェブサーバー上でプログラムを動作させるための仕組みのことです。CGIは掲示板やアクセスカウンタ、フォームメール、アクセス解析、アンケート、ユーザー認証、WikiやBlogシステムなどに使われています。

CGIの特徴

HTMLでは実現できないプログラム処理をCGIを使うことで可能にします。

例えばカウンターですと、アクセスがあるたびに、訪問者数を記述するファイルから、今までの訪問者数を読み取り、その数に1を加えて、記述ファイルに書き込むということが必要となります。HTMLではできませんが、CGIを使うことにより、これが可能になります。

CGIの設置

CGIで使われているプログラムの大半はテキストの状態で動きますので、コンパイルなどの処理がいりません。また、フリーで配布されているCGIも多々あるので、使わせてもらうと便利です。

ただし、HTMLと違いアップロードしただけでは動きません。パーミッション(実行権限)の設定などが必要となるため、ウェブサーバーを移動させる場合などは注意が必要です。

CGIはプログラムではない?

CGIはプログラムのことではありません。ウェブサーバーの機能(アパッチなどのサーバープログラム)だけでは、サーバーに送られてきたデータを処理して送り返すということができません。そこで外部のプログラムと連携させて実現させます。この取り決めがCGIです。

外部プログラムとしてはPerlがよく使われていましたが、近年ではオブジェクト思考指向型の言語であるPython、Rubyなども広く使われています。