- ベストアンサー
初心者 CGIがうまく表示できない hello worldが表示されない
よろしくお願いします。 アパッチとアクティブパールはインストール済みです。(vistaです) C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\index.html で「It works!」は問題なく表示されます。 中身: <html><body><h1>It works!</h1></body></html> です。 次にCGIを表示する練習をしようと C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\perlbook というフォルダに ********************************* ファイル名:hello.cgi 中身: #!/Perl/bin/perl print << "eof"; content-type: test/html <html> <head> <title>cgi</title> </head> <body> hello world </body> </html> eof ********************************* を作り、ダブルクリックで開きましたが ブラウザには 「#!/Perl/bin/perl print << "eof"; content-type: test/html hello world eof」 が表示されます。 hello worldだけ表示されるはずだと思うのですが なぜ全てのタグが表示されてしまうのでしょうか? どこが間違っているのかご指摘よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
他にも間違いがあるのかもしれませんが、今パッと見てわかったことは MIMEヘッダが間違っていることです。 文字の出力でしたら text/plain または text/html を指定してください。 そのソースリストでは test/html になっています。 test/html というMIME型は存在しません。
その他の回答 (2)
- kinoswita
- ベストアンサー率50% (4/8)
perlのパスが違うのでは? #!/Perl/bin/perl をActivePerlを標準で C:\Perl\ にインストールした場合は #!C:/Perl/bin/perl に変更してみてください
お礼
うーん でもhtmlはうまく表示されます。 確認してみます。ご回答ありがとうございます。
- zxcv0000
- ベストアンサー率56% (111/196)
Apache で CGI を動かすには設定で必要です。 参考URLを参照して設定してください。 一般に、Perlソースがそのままブラウザに表示されるのは、大方この手の問題です。 あと、No.1 さんのおっしゃる様に content-type の誤りも直しましょう。
お礼
設定してみます! ありがとうございます。
お礼
ありがとうございます。 test/htmlは単純に入力ミスをしてしまいました! 早速 text/htmlかtext/plain にしてみましたが ダメでした。 まだどこか間違ってるのかも、、、