CGIプログラムを書きたくてゼロから勉強をはじめた者です。
プログラムの経験はまったく無いですが、Perlを勉強したいと思っています。使用するのは自宅のMac(OS10.4)です。
1行目に#!/usr/bin/Perlとパスを書き、それをCGI-Executablesフォルダの中に「go.cgi」という名前で保存しました。
次にTerminalにてパーミッション設定。
chmod 755 /Library/WebServer/CGI-Executables/go.cgi
と書きました。
心配なのでケーブルを抜いてからパーソナルWeb共有を開始した後、http://以降localhost/cgi-bin/go.cgi
あるいは127.0.0.1/cgi-bin/go.cgiでブラウザから呼び出してみたのですが、次のようなエラーが表示されてしまいます。
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator, [no address given] 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.
解説本やネットの情報を組み合わせてやってみたのですが、間違っている箇所がありましたらご教授ください。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
まず、このエラーは500番のInternal Server Errorになります。
内部エラーですね。
WebサーバがCGIを動作しようとしたときに、
エラーになってしまいクライアントに情報を返せないときにでるエラーです。
どのようなCGIを動かしているかわかりませんので回答はしかねますが、
以下のようなことを怪しんでみてください。
・perlのスクリプトは正しいか
#Terminalは使えているようですので、./go.cgiなどとして実行してみてください。エラーが出るようでしたら修正する必要があります。
・パーミッションは正しいか
設定されているようですけど、Perlの中から違うPerlのスクリプトを呼び出していて、そのスクリプトのパーミッションが正しくないとか
・HTTPヘッダは書かれていますか
一番先頭に、以下のような文を表示していますか?
print "Content-Type: text/plain\n\n";
#私も結構忘れます。。。
#詳しいことは、参考URL等をお読みください。
お分かりかもしれませんが、
初めてということですので、参考になればということで、
PerlでCGI書く場合は、以下のような手順でやっています。
1.Terminalから実行して文法エラーがないか確認する
2.Webサーバに置いて、パーミッションをいじってから
ブラウザで確認する
わからない場合は、ネットで検索すれば、かなりの数の情報を得られると思います。
参考URL:http://www.tohoho-web.com/ex/http.htm
回答ありがとうございます!
お礼が遅くなりすみませんでした。
実はプログラムとして書いたのはPerlパス1行だけだったんです。
HTTPヘッダ書いてなかったです・・
忘れていたんじゃなくてそれでいいと思っていたので^^;
もしかして(!)と思ってやってみたら上手くいきました。
それからPerlの手順も参考にさせていただきました。
間違っていなかったので、すごく自信になりました。どうもありがとうございます^^
ただ構文チェックのところでつまづいているので、そのことをMacintoshカテゴリで質問させていただこうかと考えてます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- YouTube youtubeからの著作権メールについて 2 2023/02/14 16:12
- 公的扶助・生活保護 保証人? 1 2022/05/17 22:42
- 英語 英文の添削をお願いします 4 2023/05/23 11:10
- その他(SNS・コミュニケーションサービス) 自分のpcがハッキングされたようなメールが来たのですがどうすればいいですか? 4 2022/10/02 16:14
- MySQL 何にかが違うから エラーなんでしょうね! 2 2022/09/18 05:28
- 戦争・テロ・デモ ウクライナ、メル友に五千円要求されてさ 1 2022/04/02 09:38
- Perl Perlのエラーについてご教授ください。初心者です。 CGIを別サーバに移したところ、Perlのバー 5 2023/05/31 10:48
- MySQL テーブル作成です。どこかのスペルが間違っているか記号など スペースかな? 1 2022/10/01 05:08
- X(旧Twitter) Hello, We received your appeal regarding your acco 1 2022/09/12 03:57
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで集計したい。
-
めちゃきれい
-
apacheでPerl CGIが作動せず、5...
-
(フリーの)ツリー掲示版CGI、...
-
ラズパイでのCGIで、pythonソー...
-
CGI.pmはもう古い!?
-
.htaccessについて
-
POSTメソッドの最大容量について
-
3DCG
-
/bin/awk '{print $5}'ってどう...
-
入力フォーム(電話番号)
-
誕生日占いをプログラムで作成...
-
number 改行が追加できない
-
生成AI画像について
-
ホームページにメールフォーム...
-
cgi アクセス制限 エラー
-
CGIの記述について教えてくださ...
-
CGIの設置が分かりません・・・
-
ホームページにCGIを設置したの...
-
ホームページにCGIを設置したの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで集計したい。
-
フォームを再送信しますか?
-
apacheでPerl CGIが作動せず、5...
-
ホームページでCGIのフォームを...
-
生成AI画像について
-
/bin/awk '{print $5}'ってどう...
-
入力フォーム(電話番号)
-
(フリーの)ツリー掲示版CGI、...
-
古ーくからフリーのtree.cgi掲...
-
VBAで条件から範囲を指定して色...
-
ホームページにメールフォーム...
-
一番簡単なCGI,掲示板の設置教...
-
CGIって何ですか?簡潔に教えて...
-
サーバーのエラーでおしえてく...
-
サイト訪問者の情報を取得したい
-
htmlからパラメータで、cgiに渡...
-
CGIで出力するhtmlの<!DOCTYPE ...
-
cgiからsendmailを送信で文字化け
-
POSTメソッドの最大容量について
-
ホームページにCGIを設置したの...
おすすめ情報