2012-12-15 74 views
1

我正在運行一個新的python腳本,經過多次試驗後,我運行了它(有點)。這裏的文件:Python腳本標題錯誤的提前結束

#!/usr/bin/python 
import cgi 
import cgitb 

print "Content-type: text/html" 
print 

print "this is working" 

它在SSH運行良好,但從瀏覽器我得到一個500錯誤。諮詢錯誤日誌,我得到「腳本頭的提前結束」。我使用mod_wsgi運行Ubuntu,並且我相信我已經正確地設置了apache2.conf,sites-available/default,並且我擁有正確的權限,而且沒有正確設置。而且,正如我所說的,python在SSH中運行良好 - 但我需要它作爲一個Web應用程序運行。

任何人的想法?我已經爲此工作了兩天,沒有任何工作。

+0

在'content-type'聲明之後添加兩條換行符。 –

+3

你爲什麼使用'mod_wsgi'作爲CGI應用程序?您需要在腳本中使用WSGI,或配置Apache以將其作爲CGI腳本運行。 http://httpd.apache.org/docs/2.2/howto/cgi.html –

回答

0

如果這是通過mod_wsgi的一個WSGI腳本,它應該是這個樣子:

def application (env, r): 
    body = 'this is working' 
    status = '200 OK' 
    response_headers = [ ('Content-Type', 'text/html'), ('Content-Length', str (len (body))) ] 
    r (status, response_headers) 
    return [body] 
0

感謝所有幫助,大家好。在查看上面的Liquid_Fire鏈接時(http://httpd.apache.org/docs/2.2/howto/cgi.html),我發現了一些關於suexec運行的信息。我檢查出來了,我的盒子正在運行suexec。我評論說,和HOORAY!有用!

相關問題