1-1 CGIの基礎知識
CGIとは Common Gateway Interface の略で、ウェブサーバーがブラウザ(IEやNN)等のアクセスによって外部プログラムを実行する仕組みの事です(具体的には「掲示板」や「カウンター」等のシステムがそれに当たります)。
通常のウェブページではHTMLファイルなど、予め用意していた静的なページを表示するだけですが、CGIを利用すると(ウェブサーバー上で実行される為に)訪問者のブラウザやパソコンの機種、OS等に依存しない動的なページを提供する事が出来ます。(それゆえ設定を間違えてエラーを起こすとサーバー側に甚大な被害をもたらしたり、場合によってはシステムダウンまでしてしまい損害賠償を請求されたりする事もありますので、くれぐれも設置する際は気をつけて下さい)
1-2 CGIを設置する為には
- 最低限確認しておかなければいけない事が1件
- 設置前に揃えておくべきソフトが3点
(FTPソフト、解凍ソフト、テキストエディタ) - あとは簡単な知識
(相対パスと絶対パスの知識、バックアップするデータの種類等の理解)
以上の三点があればCGIは誰にでも設置する事が出来ます。(但し、CGIの配布先に書かれている説明書を読んでも余り理解出来ないという方や、自宅でローカルサーバーを立てて動作確認が出来ない方などは、他の方に迷惑をかけてしまい兼ねないのでレンタルで借りるか、もっと勉強されてから挑戦される事をお勧め致します)。
1-2-1 CGIの設置が許可されているサーバーか確認する
セキュリティの観点から許可をしていないサーバーもあります。 (また、サーバー側が用意している物しか使えないケースもあります)
- 許可されている場合
このまま下記にお進み下さい。 - されていない場合
レンタルで借りるか、サーバー側が用意している物をご利用下さい。
1-2-2 解凍ソフト
CGIのスクリプトは複数のデータから成り立っている事が多く、通常一つにまとめて(圧縮されて)配布されております(冷凍食品でいうカチコチの凍った状態みたいな物です)。 このままでは使用出来ないので、それらを解凍するソフトが必要になります。 (下記のリンクはフリーソフト[著作権は放棄していないけど無料で使用出来る物]のみ紹介しております)。
[ 関連事項1 : HP-TIPS > CGI > 「+Lhaca(ラカ)」の設定方法 ]
[ 関連ページ2 : リンクのページ > お役立ちソフト > 解凍ソフト ]
1-2-3 テキストエディター
テキスト文章を編集する為の物です。CGIはHTMLファイルと違ってメモ帳やHTML製作ソフト等では編集出来ません(意図しない場所で改行されたりするのでエラーが出る原因になります)。必ず一つは手に入れて下さい(両方共フリーのソフトです)。
[ 関連事項1 : HP-TIPS > CGI > 「TeraPad」の設定方法 ]
[ 関連ページ2 : リンクのページ > お役立ちソフト > テキストエディター ]
- リンク集の方に
でるふぃ様のもっと詳しい 『TeraPad Help』がございます。
1-2-4 FTPソフト
サイトを公開する為にはウェブサーバー上にある自分に割り振られたホームページ(ネット上の住所)にデータを転送しなければいけません。 FTP(File Transfer Protocol)ソフトはその為の通信手段です。(このソフトを利用すれば、サーバー上に送ったデータを上書き・削除・追加する事が出来ます。またCGIを転送する際はモードを指定したり、アップロードした後にパーミッション[アクセス権の許可]を設定する事も出来ます)
[ 関連ページ2 : リンクのページ > お役立ちソフト > FTPソフト ]
- 通常拡張子(「.html」や「.cgi」)は表示されない設定になっております。 マイドキュメント等のフォルダをクリックし、ツール → フォルダオプション → 表示 → 「ファイルとフォルダ(の表示)」にある「全てのファイルとフォルダを表示する」にチェックを入れると見えるようになります。
[ 関連事項 :
CGI設置時のエラー (転送モードの設定が違う 、パーミッションの設定が違う 、アップロードする場所を間違えている) ]
1-2-5 相対パスと絶対パス
HTMLでリンクを貼る時も利用する方法です。この指定が間違っているとCGIは動作致しません。(エラーが出ます)
相対パス
- ./
- 同じディレクトリ内 (特に指定せずファイル名を直接書く場合も同じ意味です)
- ../
- 一つ上のディレクトリ
- ../../
- 二つ上のディレクトリ
- フォルダ名/ファイル名
- 一つ下のディレクトリ
- フォルダ名/フォルダ名/ファイル
- 二つ下のディレクトリ
※ 相対パスはスラッシュ(/)から始まらないのが特徴です。
絶対パス(フルパス)
(1) / (スラッシュ)から始まる物
(2) http:// から始まる物の2種類あります。
※ 上記の図は「bbs.cgi」から見たパスです。
「./jcode.pl」 と 「jcode.pl」、
「./img/home.gif」 と 「img/home.gif」 はそれぞれ同じ意味になります。
【 具体例 】
- 相対パス
「index.html」 から 「top.html」 にリンクを貼った場合の相対パスは <a href="top.html ">になります。また、「top.html」から「掲示板(bbs.cgi)」にリンクを貼った場合の相対パスは「cgi-bin/bbs/bbs.cgi」になります。(勿論、「./top.html」 や 「./cgi-bin/bbs/bbs.cgi」 と書いてもOKです) - 絶対パス
hogeユーザーがpublic_html に index.htmlを用意した場合、絶対パスは上記の物か
またはhttp://nantoka.jp/~hoge/index.html になります。
※ 同じ階層(ディレクトリ)を表す「./」は、
一つ上の階層を表す「../」と似ているので覚えにくいと思われる方は、同じ階層の時のリンクだけ 『直接ファイル名を書くパス』
にしておくと覚えやすいかも知れません。 知れないだけ……(^^;
[ 関連事項 : HP-TIPS > HPの作り方 > 相対パス、絶対パス ]
1-3 CGIデータのバックアップ方法
CGIが上手く設置出来たら、定期的にログデータをバックアップする事をお勧め致します。(全く取っていないと、まさかのサーバーエラーやパソコンの初期化時、もしくはサイトの移転等の際にヒドイ目に遭います(^^;)
-
定期的にバックアップを取ると良いファイル
「.log」 や 「.dat」 という拡張子の物です。(例 : 「diary.log」 「count.dat」)
これらのファイルが日記や掲示板、カウンター等のログファイルに指定されている事が多いです。 (まれに「.txt」 というデータファイルもございますが、余りセキュリティが高くないので 「ログファイル」 として機能しているCGIなのであれば、違うスクリプト(CGI)を使用する事を検討した方が良いかも知れません/汗) -
CGIの設定やデザイン面を変更した際にバックアップすると良いファイル
「.ini」 や 「.cgi」、「.css」 という拡張子の物。(例 : 「diary.ini」 「bbs.cgi」 「style.css」)
初めて設置したCGIは、動作確認後デスクトップ上に置いてあるサイト用のフォルダに入れて丸ごとCD-ROM等に保存して下さい(ヴァージョンがアップした際に便利なので、設定ファイルもバックアップしておいた方が良いです)。 ちなみにセキュリティの観点からログファイルでも 「.cgi」 という拡張子でスクリプトを配布しているサイト様もおられます(例 : 「diarylog.cgi」 等)。たいてい、設置方法を書いたページにバックアップすべきファイルも書いておられると思いますので、そちらをまずご参考なさって下さい。