エラーメッセージからトラブル内容を推測し、解決策を探るページです。 ここに無いメッセージが表示されましたら、そのCGIプログラムとその存在場所をお教えいただければ調べて、解決し、ご報告させていただきます。 |
500 Internal Server Error | |
Internal Server ErrorThe server encountered an internal error or misconfiguration and was unable to complete your request.Please contact the server administrator, root@ann.co.jp and inform them of the time the error occurred, and anything you might have done that may have caused the error. | |
解決1 perlの存在場所指定が間違っている時にでます。 CGIプログラムの1行目の記述を #! /usr/bin/perl として下さい。 良くあるのがCGI学習書に書かれている #! /usr/local/bin/perl のままでは本メッセージがでます。
解決2 外部スクリプトを呼べない時にでます。
解決3 CGIプログラムの改行コードがCRLFの時に出ます。 |
403 Forbidden | |
ForbiddenYou don't have permission to access CGIプログラム名 on this server. | |
パーミッションの設定で権限が無い時にでます。 CGIプログラムをサーバーに転送するだけではだめで、パーミッションを変更する必要が有ります。 Telnet接続でのパーミッションの変更が必要です。 |
404 File Not Found | |
File Not FoundThe requested URL CGIプログラム名 was not found on this server.
| |
アドレスが間違っているため、指定したアドレスには存在しない時にでます。 アドレスを再度確認する。アップロードしたつもりが実際されていないのかもしれません。 |
些細なことだが重要なこと | |
1)大文字と小文字の区別 Perlは大文字と小文字を区別します。jcode.plをJCODE.PLと書くと違うファイルと判断します。 2)半角と全角の区別 日本語は全角文字で表現しますが、スクリプトプログラム部分は半角英字としてください。 3)#が付いたその右側はコメントとして扱います。 #require "jcode.pl"; はコメント行となってしまいます。 $nen = 20; # 年齢を入れる は#の右側がコメントとなります。 |