アプリ版:「スタンプのみでお礼する」機能のリリースについて

perl で

require 'cgi-lib.pl'; または require "jcode.pl";
を実行すると、

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, admin@mshome.net and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

というメッセージが出ます。(cgi-lib.pl、jcode.plは同じディレクトリにあります。)

A 回答 (8件)

ローカルで試されているとのことなので



More information about this error may be available in the server error log.

とあるのならログをみてみてはどうでしょう。
    • good
    • 0
この回答へのお礼

ありがとうございます。
 ログを見たら
 ./cgi-lib.pl did not return a true value at -----
 とあったので、cgi-lib の方がまずいと思いましたが、

 何度か 起動させると正常になります。(つまり、不安定。require文が原因ではないでしょう。その前に jcode.pl はPCの時間が 10/31 になっていたので 正常な 10/1 に修正したら、エラーは消えました。マザーの電池を変えることにします。なんで、 jcode.pl に関係するのか? マザーの電源を 一日 カットして分かったことです。変な時間に勝手に起動したりしていたし。)

お礼日時:2005/10/01 13:47

よくエラーメッセージを見ると「admin@mshome.net」という文字がありますね。


httpd は IIS か PersonalWebServer でしょうか?
それとOSはなにをお使いですか?

※ .plがCGIとしてサーバに認識されてないような気がします。
    • good
    • 0
この回答へのお礼

ありがとうございます。
 ANO.8 のとうりです。

お礼日時:2005/10/01 13:49

ローカルで実行しているのなら、PerlをインストールしたディレクトリのLibの中にcgi-lib.pl、jcode.plを置いてみたらどうでしょうか。


自信ないですが。
    • good
    • 0
この回答へのお礼

ありがとうございます。
 ANO.8 のとうりです。

お礼日時:2005/10/01 13:49

FTPクライアントが拡張子 .pl のファイルをバイナリモードでアップロードしてる可能性があります。


アスキーモード(テキストモード)でアップロードしてみてはどうでしょうか?
    • good
    • 0
この回答へのお礼

ありがとうございます。
 ANO.8 のとうりです。

お礼日時:2005/10/01 13:50

下記のサイトを参考にしてみて下さい。


Perlの文法に関するエラーなのかそれ以外の原因なのか区別する手助けになると思います。

参考URL:http://homepage1.nifty.com/typhoon/at-cgi/debug. …
    • good
    • 0
この回答へのお礼

ありがとうございます。
 ANO.8 のとうりです。

お礼日時:2005/10/01 13:51

まさか実行するPerlのプログラムのパーミッションがおかしいなんてオチではないですよね?

    • good
    • 0
この回答へのお礼

ありがとうございます。
 1.実行しているのは、転送前のローカルのWebサーバーの段階です。
 2.perl -c でチェックすると syntax OK です。
 3.ローカルでの パーミッション変更方法は分かりません。

お礼日時:2005/09/30 22:44

#1です。


実際にディレクトリから削除して試して見たのでしょうか?
サーバによっては、cgi-lib.pl、jcode.pl等を自分で置かなくても、requireで呼び出して使える場合があり、その場合自分で置くと逆にエラーとなる場合があります。
削除してもだめなら、私にはお手上げです。

まさか実行するPerlのプログラムとcgi-lib.pl、jcode.plが別のディレクトリにあるなんてオチではないですよね?
    • good
    • 0
この回答へのお礼

ありがとうございます。
 1.削除しても同様でした。
 2.同じディレクトリです。
 3.use encoding "shift_jis"; で日本語対応させることはできます。

お礼日時:2005/09/30 22:13

cgi-lib.pl、jcode.plをディレクトリから削除してみる。



これでだめなら、cgi-lib.pl、jcode.plをディレクトリに戻した状態で、
require './cgi-lib.pl';
require "./jcode.pl";
と変更してみる。
    • good
    • 0
この回答へのお礼

ありがとうございます。
  cgi-lib、jcode,pl を使用するのが目的です。(削除)

  require './cgi-lib.pl'; require "./jcode.pl"; に変更しても同じでした。

お礼日時:2005/09/30 03:24

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このQ&Aを見た人がよく見るQ&A