CGIとは
CGI * は、Webサーバー上で動くバックエンドシステムの一種です。
一般には、「Webページからの要求で動作するプログラム」を指します。具体的には、アクセスカウンターや掲示板、チャットシステムやショッピングバスケットシステムなどに利用されています。
CGIプログラムは、Perlというスクリプト言語を使って記述されています。CGIを作るには、Perlの知識が必要です。割と簡単ですが、奥が深いのがPerlです。
Perl * は、インタープリタ型のスクリプト言語のため、とても手軽に作成/運用することができます。また、Perlはテキストファイルの処理に優れており、それゆえWebページとの連携でよく用いられます。(WebページもHTMLというテキストファイルで書かれています。)
CGIプログラムを使えば、ユーザーからのアクションに動的に対応できるため、インタラクティブなホームページを作ることができます。最近ではCGIプログラムの設置を許可しているプロバイダーも多く、もはやホームページに無くてはならない存在と言えます。
Web制作現場でも、簡単なシステムなら汎用性を重視してCGIで組んだりします。私もまずはCGIを検討しますが、最近はデータベースとの連動が容易なPHPを使うことが多くなっています。規模が大きいシステムにはCGIは向いていません。
CGIの魅力
インタープリタ型のスクリプト言語のため、コンパイルなどの面倒な作業が要らない。書いたらすぐに動かせる。メモ帳でも作れる。
対応しているプロバイダー/レンタルサーバーが多い。
完成したCGIプログラムを配布しているサイトがたくさんある。
既に汎用ライブラリが多く存在する。
オープンソースのため、入手も利用もタダである。
多くの環境で動作する。UNIXなら標準で使える。
CGIの利用
CGIを使ったページは、普通のページと同じようにアクセスして見ることができます。なぜなら、CGIはWebサーバー上で動作するものだからです。ブラウザさえあれば誰でも特別な設定をせずに利用できます。(これ重要です)
もし自分のホームページ(ウェブサイト)にCGIを置いて動かしたいなら、CGIの実行が許可されているか確認してください。Okなら、以下の手順で使えます。
(1)CGIスクリプトを作成または入手する。(2)スクリプトの一行目でPerlのパスを指定する。(3)スクリプトをアスキーモードでサーバーへFTP転送する。(4)実行属性(パーミッション)を与える。
もし自分でCGIプログラムを作ったり改造したりしたいなら、文字を書くソフトさえあればOkです。Windows標準の「メモ帳」でも作れなくはありませんが、できれば「テキストエディタ」と呼ばれるソフトを使うと便利です。私は「秀丸エディタ」というのを使っています。作った後の動かし方は、上に同じです。
なお、CGIは各種のプラットフォームで動作します。UNIX系はもちろん Windowsでも動きますので、本気でPerlを勉強するなら、自分のパソコンにPerlを組み込むといいでしょう。そうすれば、自分のパソコン上で動作を確認できます。
パソコンに実行環境をインストールするには、WWWサーバーのインストール→Perlのインストール という手順が必要です。サーバーといっても、古いパソコンやOSでも大丈夫です。
詳しい導入方法を「自宅サーバーで行こう」のCGIのインストールにまとめてありますので、そちらをご覧ください。
|
WindowsにPerlの実行環境をインストールする方法を「自宅サーバーで行こう」のCGIのインストールにまとめてあります。
* CGI (シージーアイ)
Common Gateway Interface の略
* Perl (パール)
Practical Extraction and Report Language の略
ユナイテッドアソシエイツでは
CGIによるサイト構築や各種Webアプリケーションの開発を承っております。
メンテナンスの簡単なサイトや、データベースを使ったECサイトなど、技術力と即戦力でお応えします。
|