Pythonを用いてCGIを作る勉強をしています。
さて、CGIHTTPServerでCGIのテストをしようとしたところ、ぜんぜん動いてくれません。ちゃんとファイルのパーミッションも755にしました。
自分の力だけではどうにもならなかったため、ここで質問させてもらいます。
どうしたらよいのでしょうか。
僕がつくったPythonのソース test.pyは
#! /usr/bin python
print "Content-type: text/html\n"
print "<html><body>Hello!</body></html>"
です。
本来ならブラウザで「http://127.0.0.1:8000/cgi-bin/test.py」
とすれば動いてくれるはずなのに以下のようなエラーメッセージが出ます。
localhost - - [19/May/2010 23:46:43] "GET /cgi-bin/test3.py HTTP/1.1" 200 -
Traceback (most recent call last):
File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/CGIHTTPServer.py", line 255, in run_cgi
OSError: [Errno 13] Permission denied
localhost - - [19/May/2010 23:46:43] CGI script exit status 0x7f00
PCの環境はMacOSX10.6です。
だれか分かる方。教えていただけないでしょうか??
よろしくお願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
基本的にhttpサービスが作動していないのではないでしょうか。
MacOSのファイアーウォールか、ApacheなどのWebサーバの設定を確かめて、
index.htmlの表示から再確認したらどうでしょうか。
No.1
- 回答日時:
まず、ヘッダ情報の出力の末尾は改行が2回必要です。
したがって、print "Content-type: text/html\n" は、
print "Content-type: text/html\n\n" が正しいのです。
また、エラーメッセージに出ているtest3.py は正常に動作したのでしょうか?
1本でも動作したことがあるとしたら、フォルダのパーミッションや :8000 のポート指定の間違いはないということです。
逆にまだ動いたことがないとしたら、フォルダのパーミッションや ポート指定の変更などの対応が考えられます。ポート指定は、無指定か、:80 :8080 などが候補でしょう。
また、当然、CGIHTTPServer.py のパーミッションもpythonフォルダのパーミッションも確認した方がよいでしょう。
回答ありがとうございます。
じつはどのファイルも正常に動作してないです。
指摘していただいたことはすべてやってみたんですが、Firefoxで開こうとすると、cgiが実行されずにファイルのダウンロードが開いてしまいます。
Safariでも同じでした。どうすればいいのでしょうか。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- Ruby 教えてください 2 2023/01/04 17:50
- Ruby パイソンエラーについて 1 2022/12/24 14:07
- その他(プログラミング・Web制作) pythonをjupiter notebookからmecabで頻出の高い単語の抽出について(Runt 1 2022/12/17 18:08
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- その他(プログラミング・Web制作) ラズパイ上の、pythonのエラーについて 1 2023/04/12 23:27
- CGI CGIで出力するhtmlの<!DOCTYPE html>等のタグは要りますか? 2 2023/02/05 21:26
- その他(プログラミング・Web制作) python 2 2022/12/23 09:06
- CGI htmlからcgiを自動的に起動させたい 1 2023/02/21 19:39
- Java マイクラでPythonのプログラミングができません 3 2023/05/28 07:15
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
結果を得て自動的にページ移動...
-
shift-jisからutf8に変換
-
Perl CGIの中で # を使ってコメ...
-
JSONで文字列が長い時
-
Application.ScreenUpdating = ...
-
16進の10進変換について
-
文字の横にプルダウンを表示さ...
-
formで特定のinputを送信しない...
-
回数を指定しないで空白行まで...
-
問題作成のWebアプリの作り方を...
-
ACCESS テキストボックスを隙...
-
子windowsからsubmit()後にclos...
-
pythonで演算子を変数に代入す...
-
FindFirst を複数条件で検索
-
【至急!!!】python言語で本を見...
-
<SELECT>タグの折り返し
-
構造体の各データの表示につい...
-
【C#】数値の範囲チェックについて
-
C言語のflagの使い方が分かりま...
-
VBAでPDFのコピーとリネームを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
my $html<<EOMの意味を教えてく...
-
malformed header from script....
-
結果を得て自動的にページ移動...
-
Perl CGIの中で # を使ってコメ...
-
パソコン → パャRン
-
shift-jisからutf8に変換
-
CGIから出力される文字が化けて...
-
フリーCGI ラジオボタンの改行...
-
テキストエリアにテキストファ...
-
HTMLのファイルにCGI処理結果を...
-
アクセス人数制限CGIについて。
-
初歩的なCGIですが その2
-
PerlでDBIを使いますが、結果セ...
-
ランダムに背景画像を変える方法。
-
Perlでの数字の12桁化
-
Pythonを用いてCGIを作る勉強を...
-
cgiでのデータ受信
-
CGIファイルを参照制御でき...
-
テキストエリアの改行表示
-
テキストファイルの読み込み
おすすめ情報