 |
はじめようCGI
|
|
 |
設置前のサポート
|
|
 |
設置後のサポート
|
|
|
- Perlまでのパスが間違っている。
スクリプトには必ず1行目にPerlまでのパスが記述されています。
#!/usr/local/bin/perl
これを「Perlまでのパス」といいます。
これが間違っていると絶対にCGI・SSIは動作しないので注意してください。
このパスはプロバイダによって異なります。
たいていは上記のパスですが、プロバイダに確認するようにしましょう。
また、「Perlまでのパス」は、必ず1行目に書く必要があります。
これはお約束なのでどうしようもありません(^_^;
文字と文字の間に空白を入れたりすると、同じくエラーとなってしまいます。
- 403 Forbidden
このメッセージは、ファイルのパーミッションに問題があることを示します。
- 404 Not Found
このメッセージは、指定されたファイルが存在しないことを示しています。
- 500 ServerError
このメッセージは指定されたファイルの実行の際に、
なんらかの 問題が発生したことを示しています。
- Error 500:Server doesn't support POST または 501 Not Implemented
クライアントの要求をサーバがサポートしていない時のメッセージです。
- Error500:Bad Script Request
CGIスクリプトが実行可能になっていません。
- ログファイルまでのパス(または名前)が間違っている。
スクリプト内で指定した、ログファイルまでのパスが間違っていないかチャックしましょう。
以下はパスの指定の仕方を説明した例です。参考にしてください。
[www]┐
├ index.html
|
└ [cgi-bin] ┐
├ test.cgi
|
└ [data] ┐
└ test.dat
|
この場合ですと、test.cgiから見たtest.datまでの相対パスは、
./data/test.dat
のようになります。
また、index.htmlから見たtest.cgiへの相対パスは、もうお分かりと思いますが、
./cgi-bin/test.cgi
となります。
- ログファイルの属性が間違っている。
ログファイルの属性(パーミッション)は、「その他」の人も書き込むため、
<666>である必要があります。
- ログファイルが存在しない。
ログファイルそのものが存在しない場合も考えられます。
ログファイルは、初めは空のテキストファイルなので、あなた自身で作ることも可能です。
メモ帳などで何も書かずに「新規保存」をすればOKです。
名前(拡張子も含む)は、スクリプトで指定したファイル名に合わせて
変更することを 忘れないようにしましょう。
- 同じCGIを複数設置したい場合はどうすればいいのだろう。
CGIを設置して、サイトの規模も大きくなると、 こういった疑問が出てくるかも知れません。
もちろん、同じCGIを複数設置することは可能です(^_^)
やり方としては、次の2つがあげられます。
- ファイル名を変えて設置する。
同じディレクトリにどうしても複数設置したい場合、ファイル名が同じだと、
ファイル名の競合というのが起きてしまいます。
これを避けるためにどちらかのファイル名を変更して、競合を避けます。
例えば2つのHTMLページに別々にカウンタを取り付けたい場合、次のようにします。
[www]┐
├ one.html
├ two.html
|
└ [cgi-bin] ┐
├ counter1.cgi
├ counter2.cgi
|
└ [data] ┐ ├ count1.log
└ count2.log
|