2012-02-13 16 views
2

私はインターネットプログラミングに携わっていますが、私たちは.cgiをやっていますが、私の人生では、.cgiスクリプトをまったく動かすことができません。私は他の人々が働いているのを知っています。助言がありますか?シンプルな.cgiの内部サーバーエラー、何が問題なのですか?

#!/usr/bin/env python 

print "Content-type: text/html" 
print 
print "<html><head><title>CGI</title></head>" 
print "<body>" 
print "hello cgi" 
print "</body>" 
print "</html>" 

私は755のファイルを複数回にchmodしている、私は#!/usr/bin/python#!usr/local/bin/pythonを使用して試してみました。私はcgi-binという名前のフォルダに入れようとしましたが、unixの行末で保存されていることを確認しましたが、私が得るのは内部的なサーバーエラーです。私はクラスで働いていたことは分かっていますが、今は走ることを拒否しています。ありがとう?

+0

あなたが確かに見つけ出す唯一の方法は、サーバーログを見ることです。彼らは別のオペレーティングシステム上の別の場所にあるので、どこを見てもわかりません。ログを検索すると、500が返されている理由を正確に説明するエラーメッセージが表示されます。 –

+0

うーん、私はUbuntuにあり、サーバーはCentOS上でApacheを実行していますが、それは役に立ちますか? CentOSサーバー上の – marblecatdog

+0

は、Apacheログをチェックします。それらは/ var/log/httpd/error_logにあるはずです – monkut

答えて

1

[OK]を、これは私が完全に逃した本当に簡単修正です。最初のNed Batchelderは、コードがPython 2(私はPython 3を使用しているので奇妙です)を正しく指摘しましたが、問題はprint( "Content-type:text/html")の後のprint文です。 2番目のprint文はprint()だけでなくprint( "")しなければなりません。だから私は少し愚かな感じが、それは私のための問題を修正し、これは他の誰かを助けることを願って!

1

ワイルド推測:あなたのprint文は、印刷機能する必要がありますので、あなたが、Pythonの3を使用しているコール:

print("Content-type: text/html") 
etc... 
+0

いいキャッチですが、私はそれを変更しても何の違いもありませんでした – marblecatdog

関連する問題