プロが教える店舗&オフィスのセキュリティ対策術

#!/usr/bin/perl -d:ptkdb
use CGI;
print(CGI->new->header, "abc");

原因を解明するために超簡易スクリプトを作成しました。
このスクリプトはブラウザーにabcと表示するはずです。
しかし
Internal Server Error
となってしまいます。
このスクリプトから
-d:ptkdb
の部分を取り除くと、ちゃんとabcと表示されるのです。
また、コマンド行では-dオプションの有無に関係なくちゃんとabcと表示されます。。。

誰か教えてくださいm(__)m

サーバー機はRedHatLinux7.2です。

A 回答 (2件)

$ENV{DISPLAY}を設定する必要があるとか何とか



まずはApacheのエラーログを確認してはどうですか

この回答への補足

dummさん、ご報告します。
Apacheのエラーログを確認したところxlibのエラーが発生しておりました。
そこで、xhostでローカルホストを追加してみたら、できました!!

私の本にもxhostで通信許可するマシンを追加する旨の記載があったのですが、
今回はローカルホストからのテストでしたので、その必要無しと、勝手に判断しておりました。
なぜか同じローカルホストでも、コマンド行からはOKで、ブラウザーからはNGのようです。
これって常識ですか^^

補足日時:2008/10/18 12:51
    • good
    • 0
この回答へのお礼

dummさん、ご返信ありがとうございます。
私はただいま出張に飛ばされておりますので、
dummさんのアドバイスに対するアクションは週末に行います。
そのときご報告しますので、また見に来てくださいね!
これは私が趣味で作ったサーバーなので帰宅するまで触れないのです^^

お礼日時:2008/10/15 17:54

ptkdb って、Devel::ptkdb ですよね?



Andrew E Page / Devel-ptkdb - search.cpan.org
http://search.cpan.org/dist/Devel-ptkdb/

>Perl debugger using a Tk GUI

ってあるんですけど、どうやってCGIスクリプトをこれでデバッグするんでしょうか?
    • good
    • 0
この回答へのお礼

sakusaker7さん、ご返信ありがとうございます。
そうですDevel::ptkdbです。
デバッグのやり方ですが。。。
コマンド行でこのスクリプトを実行すると、デバッガーが起動して、ビジュアルベーシックみたいにステップ実行とかができるようになります。
これをブラウザーから呼び出したときも、同様にデバッガーが起動し、ステップ実行とかの機能が使えるそうなのです。
しかし、デバッガーが起動する気配はなく、ブラウザーはInternal Server Errorとなってしまうのです。
これの対処法を教わろうと思い、ここへ質問に参りました。

お礼日時:2008/10/14 18:00

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