CGIをつかえば、ユーザーのブラウザからの入力を受け取ったり、
動的に生成したドキュメントをユーザーのブラウザに表示させたり、
文字通りインタラクティブなホームページを作成することができます。
現在、多くのCGIプログラムは、Perlを用いて作成されています。
CGIを作成するために、Perlを用いるという選択肢は確かに賢明です。
Perl自体、非常に高機能なスクリプト言語ですし、プロバイダーにとっても、
サーバー上でC言語を扱われるよりも、幾分安心できるというものです。
ユーザーにC言語でプログラムさせるためには、コンパイルのためにシェルを
開放しなければなりませんし、C言語やシェルを開放してしまえば、解決不能な
セキュリティーホールを抱えることになりかねません。
しかし、Perlも良いことばかりではありません。どう見ても、コードの外観は
美しいとは言えないでしょう。(Wall先生、ごめんなさい)$やら@やら_やらの
記号が大量に出現しますし、変数の型(がないこと)や、スコープ、
引数などの決まりを憶えなければなりません。これらは、BASICで育った人々
からすれば、全く苦痛を感じないことでしょうが。
さて、自分のサーバーを管理している人や、学校、会社などでCGIを
書いている人はC言語を使える環境にいることが多いと思います。
CGIを書くためには、標準入力と標準出力が
できれば、どの言語でもよいのです。Fortranでもなんでも。
このページでは、もっともポピュラーと思われるC言語を使ってCGIを
作成する方法を、いくつかの例を交えて解説したいと思います。
注意!!
プログラム例は、FreeBSD 2.2.5 + Apache 1.2.4でテストしました。
(このページを公開しているサーバーではありません)
他の環境では、若干の修正が必要かも知れません。
C言語についても、標準includeファイルの場所や、
ライブラリ関数も、他のシステムでは確認が必要です。
また、このページの情報は、at your own riskで
参照して下さい。このページを参考にしたために
トラブルが起きたとしても、一切の責任を負いかねます。