CGIの利用に関するガイド
- Perlスクリプトの一行目には、必ずPerlのパスを記述する必要があります。[例] #!/usr/local/bin/perl
プロバイダによって違うため、これを間違うと、サーバエラーが出る場合があります。
ホームページを飾り職人の抜粋を参考にしてください。
- WWWサーバによってはCGIの使用を全面禁止にしているところもありますので、CGIが使えるサーバを利用しなくてはなりません。
また、そのサーバに皆さんの作ったホームページのプログラムを転送(アップロード)する手段が、サービスされていない場合は、
FTPソフトなるものを利用して、プログラムを転送します。(一般的には、プログラムをサーバに簡易的に転送する機能はサービスされていません。
『しんたさんのほーむぺーじ』では、極力簡単にホームページを立ち上げる観点より、あえて今まで、FTPソフトは紹介しませんでした。)
FTPソフトとしては、Windowsに標準で添付されているものに、Ftp.exe があります。ただし、すべての操作をコマンド入力するので、なれないと難しく感じるかもしれません。
Windows用でいえば、お勧めというわけではありませんが、私が使っているのがFTP Explorer、
で、日本語化モジュールで日本語変換が出来ます。その他、FFFTPなど数多く無料で使えるものが出ていまので、
自分にあったものを使われるといいと思います。なお、使い方はそれぞれの説明書をみてください。
- CGIファイルが、プロバイダ側の指定するディレクトリ(又はCGI専用サーバ)に置かれていないと正常に動作しません。
- FTPの転送モードには2種類あります。「テキスト(ASCII)モード」と「バイナリー(RAW)モード」です。
CGIスクリプトやログファイル関連はほとんどのケースで「テキストモード」で転送します。
「CGIスクリプト」と呼ばれるものはすべて「テキストモード」での転送ですので、
間違いなく「テキストモード」で転送したかをFTPツールソフトの設定をご確認下さい。
これに対して、HTMLファイルやC言語のCGIや画像、音声データ(MIDI,WAVAファイルなど)などは「バイナリーモード」で転送します。最初、私もこのことに気付きませんでした。
- ファイルの拡張子をCGIプログラム用のものにする。xxx.cgiとかxxx.plとします。とりあえず、今回はxxx.cgiだけを対象として下さい。
- FTPソフトでアップロードした、それぞれのファイル(プログラム等)にパーミッション(アクセス権)の設定を行ないます。
パーミッションの設定が正しくないと「サーバエラー」のエラーメッセージを出すプロバイダがあります。
パーミッションは例えば755等の数字3桁で設定します。
パーミッションの設定方法は、大抵はFTPソフトで行いますので、各ソフトのやり方にのっとって 慎重に行って下さい。
例えば、FTP Explorerではメイン画面で[ツール]メニューから[サーバーへコマンド]を選択し、実行権を与えるコマンドを入力します。
例えば、”site chmod 755 xxx.cgi”と入力して、OKボタンをクリックします。
- 一部重複しますが、エラーメッセージの説明を含め、丁寧に説明しているサイトがありますから、紹介します。
KENT WEBです。