[英]Flask+Apache and 500 Error
我正在使用Flask和Apache構建網站,並且該網站已啟動並正在運行。
但是我遇到了這個奇怪的500錯誤:一個500錯誤將使網站癱瘓,並且在我重新啟動apache之前,該網站將永遠不會再次聯機。 我希望Flask + Apache可以在500錯誤之后為下一個訪問者提供服務,無論如何,Flask是線程本地的。
假設出現以下情況:
@app.route('/<ExpectSomeInteger>')
def hello_world(ExpectSomeInteger):
aNumber = int(ExpectSomeInteger)
.....
顯然,上面的代碼有錯誤,應該使用<int:ExpectSomeInteger>
和東西。 如果某些訪客在“ ExpectSomeInteger”的位置鍵入了一些字母,則flask將返回500錯誤。
災難是,Apache將在此之后向所有訪問者發送500錯誤頁面! 我只能重新啟動apache才能使其重新工作!
正常嗎
我記得當我訪問某些PHP + MySQL網站時,即使遇到一些非常嚴重的錯誤,該網站也可以正常服務於下一個訪問者。
感謝@Sasha Chedygov,我的網站現在可以正常工作。
問題是我通過遵循Linode的庫安裝了名為“ mod-python”的東西: https : //library.linode.com/web-servers/apache/installation/ubuntu-10.04-lucid
在完成“ apt-get remove libapache2-mod-python”之后,現在一切似乎都很好。
將類型轉換器傳遞給路由:
@app.route('/<int:an_integer>')
def hello_world(an_integer):
...
現在,保證an_integer
為整數。 當您傳遞除整數以外的任何內容時,將發送404響應。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.