Skip ActivitiesSkip Section LinksSkip Course categories

Course categories

Skip Calendar

Calendar

Sun Mon Tue Wed Thu Fri Sat
      1 2 3 4
Today Sunday, 5 September 5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30   

Events Key

Skip Administration

Administration

Topic outline

 

from KOBITO SERVER

こ こは、CGIを使って自分のHPをもっとアクティブにしたい。でも、CGIってば良くわからない。誰か分かりやすく教えて。という方のために、CGIプロ グラミングについて解説してしまおうという、ごくごくありふれた、いかにもどこにでもありそうな場所です。でも、せっかく開講するのですから、多少は役に 立つものをと、それなりに考えてはいますが、期待してはいけません。

 
1

■はじめに

CGIっ て何なのか?難しい説明をしても仕方がないので、ずばり説明しましょう。CGIとはとっても便利な「機能」です。どんな事ができるのかは、追々分かること でしょう。とにかく便利なのです。ここではまず、CGIってば何やら便利なんだね。と言うことだけ印象付けておけばOKです。

イ ンターネットというと、普通は内容(コンテンツ)を読んだり(今まさにそうでしょうが)、必要な情報を調べたりする場所です。でも、逆にあなたの持ってい る情報をその場所へ提供することはできませんよね。これが、CGIを利用すると可能になるのです。例を挙げるなら、掲示板(BBS、フォーラム)やチャッ トなどですね。

ようするに、普通なら一方通行の情報がCGIを利用すると双方向になるわけですね。ここから情報を得たり、あなたの情報を送信したりできるわけです。

ただ、自分で1から作るとなると結構敷居が高いので諦めている人も多いはず。しかしご安心を。この講座を終える事には、CGIの1個くらいは自分で作れるようになっている「かも」です。

Show only topic 1
2

■知っておかねばならないこと

やっぱり、何を始めるにも、その前に知っておかねばならないことがあるよね。CGIにも幾つか知っておかねばならないことがあります。

ま ず、CGIは何で作るのか?CGIはですね。いわゆるプログラムなんです。プログラムと聞くと、それだけで鳥肌が立人もいるでしょう。大丈夫、プログラム の説明はまだ先です。プログラムなら作成には特別なアプリケーションが必要なのかというと、そんなことはありません。今あなたの使っているパソコンに入っ ているテキストエディタ、ようするにワープロ機能のあるソフトですね。それで作れます。

で きれば、WORDとか複雑なものではなくて、単純なものがいいです。Windowsでしたら、ワードパッドやメモ帳とか、Macintoshでしたら Simple Textのようなものがいいです。テキストの修飾機能があるような複雑なテキストエディタはお勧めできません。

何故なのか?それは課題に出しておくので各自で考えてみてください。もちろん回答に対してフィードバックできますので安心してください。

次に、その作成したCGIの保存です。意外にこれが重要です。保存は、TEXT形式で保存しましょう。一切の書式設定は必要ありません。

ただし、テキスト形式で保存した場合、WINDOWSでは拡張子が「.txt」になります。拡張子は自分で「.cgi」に変更してください。拡張子の変更方法が分からない方は、ここを参照。

Macintoshの方は拡張子と言われても何のことやら分からないかもですね。今は分からなくていいです。ファイル名の一部だと思ってください。

Show only topic 2
3

■CGIファイルの設置

作 成したCGIはサーバへアップロードしないと意味がありません。普段自分でHPを公開している方には説明の必要なないと思いますが、作成したファイルをイ ンターネットに公開するためには、自分のパソコンの中にあってもダメなのです。インターネット公開用のサーバに置く必要があります。

ま た、全てのサーバでCGIが利用可能とも限りません。サーバによってはCGIを動かす事ができない場所もあります。何しろ、CGIは色々な事ができてしま うので、管理者からすればある意味困った機能なのです。だからCGIの利用を禁止している場合があるんだよね。便利なものには怖い一面もあるわけです。

CGI が利用可能なサーバであっても特別なディレクトリ内以外使用できない場合(cgi-binなど)やCGI専用サーバがHTML公開用とは別途あり、そちら に設置しなければならない場合など、それぞれの環境によって変わってくる部分があります。このあたりは利用しているサーバの管理者に聞くしかありません。

さ て。CGIの利用が可能なサーバへ、作成したCGIを設置(アップロード)したとしましょう。実はこれだけではCGIは動きません(KOBITO SERVERでは動きます)。ファイルの属性というのがあるんです。ようするにどんなファイルであるか指定せねばならないという事です。つまり、「属性の 変更」と呼ばれる作業をしなければなりません。詳しくは次節で説明しますね。

CGIを設置(アップロード)するのに必要なソフトを紹介しておきます。それぞれの使い方はそれぞれのサイトにあるので割愛しますが、ひとつだけ注意を。CGIファイルは「テキスト形式」で転送しましょうね。これ重要です。試験にでますよ。

Show only topic 3
4

■ファイルの属性

さてさて、少々面倒だけど大切な事を説明しないといけません。ファイルの属性です。よくフリーのCGIなどの設置説明を見ると、ファイルの属性を755や666にしてくださいと書いてあるかと思います。

例えばCGIファイルはプログラムを実行するためのファイルと、ログを記録するファイルがありますが、どちらもただアップロードしただけでは、実行もできないし、ログの記録もできません。

なぜか。なぜでしょうね。なぜならそのファイル達はあなたのものだからです。でもアクセスは別の方がするんです。別の方はあなたのファイル達を使えないのです。属性とはつまり所有権の事です。

イ ンターネットを介してファイルにアクセスした場合は、全てのアクセスを所有者とは別人と見なすので、実行も書き込みもできません。だから誰でもアクセスし て実行していいですよ。とか、書き込んでもいいですよ。とファイルの所有権を皆(インターネットからアクセスしてくるひと)に開放しないといけないので す。

細かい数字の話をするよりもパターンで覚えるのが良いと思います。

CGIプログラムの実行権限を開放したいファイルは、755
書き込みを開放したいファイル(ようするにログファイルなど)は666
HTMLみたいに見るだけでよいファイルは644
とするのが基本です。

ちなみに644はデフォルトなので、ファイルをアップロードした時点では644に設定されてます。

Windows 系サーバの場合は、UNIX系とはファイルの所有権の扱いが異なるので、属性の変更が必要ない場合があります。自分の利用しているサーバがWindows 系かUNIX系か知っておく必要がありますね。大抵は利用されているサーバが情報を公開してます。とくかくCGIが動かない時は属性の確認をしてみよう。 ということですね。

属性の変更はどうやってするのか?それは課題として出しておきます。回答があればフィードバックします。

Show only topic 4
まずは、PERLを学ぶ前にCGIの予備知識を身につけましょう。
Skip Latest News

Latest News

(No news has been posted yet)
Skip Upcoming Events

Upcoming Events

There are no upcoming events
Skip Recent Activity

Recent Activity

Activity since Friday, 3 September 2010, 09:26 PM

Nothing new since your last login

Skip Search Forums

Search Forums