2011-10-31 81 views
0

嘗試部署Flask應用程序(v0.8)時出現奇怪的錯誤。我使用的是Apache的mod_wsgi,as suggested in the docs(幾乎是這個字母)。奇怪的是,在某些請求中(通過瀏覽器訪問/),應用程序加載正常,但我經常遇到資源加載錯誤(無法獲取某些CSS或圖像),並且錯誤日誌顯示類似Premature end of script headers: myapp.wsgi。有時apache崩潰內部服務器錯誤。我試圖追查這個問題,但無法弄清楚原因。我的wsgi文件看起來很簡單:燒瓶 - WSGI進程不斷崩潰

from myapp import app as application 

任何線索從哪裏開始尋找?

+0

你忘了刪除無條件的'app.run()'調用嗎? – ThiefMaster

+1

您是否驗證過您沒有遇到文檔疑難解答部分中描述的任何問題? http://flask.pocoo.org/docs/deploying/mod_wsgi/#troubleshooting - 如果我猜測,我想說你可能在使用'print'調用+符號鏈接時遇到問題,因爲你正在描述的問題的組合。 (請注意,Apache在返回500時很可能不會崩潰 - 它只是處理'mod_wsgi'生成的500錯誤[這很可能是由您的應用程序生成的)。 –

回答

3

如果您正在獲取腳本標題的提前結束,那麼您正在使用守護程序模式,並且守護程序進程因seg故障或類似情況而崩潰。

確保您尚未加載mod_python。

也可以嘗試設置:

WSGIApplicationGroup %{GLOBAL} 

來解決問題與Python C擴展模塊,它不適合子口譯安全。

請參見:

http://code.google.com/p/modwsgi/wiki/ApplicationIssues

,並尋找各種理由爲上市崩潰。