0
我已經通過the docs進行了讀取,看起來很清楚。mod_wsgi(守護進程模式)沒有重新加載源代碼
我有2個多線程的mod_wsgi進程。通常我只需觸摸wsgi腳本並重新加載源代碼。但是定期更新不會重新加載,問題會持續幾個小時。我不明白是什麼導致它停止重新加載更改,也不知道是什麼導致它在過去遇到問題時再次開始重新加載。
我試過殺死mod_wsgi進程,但沒有任何區別。我自己無法重新啓動Apache。
- 我還能做些什麼來嘗試強制重新加載?
- 我該如何防止這種情況繼續發生?
這裏是WSGI配置:
WSGIScriptAlias /ms20 /var/www-dev/wsgi-scripts/ms20.wsgi
WSGIDaemonProcess ms20 user=glpp group=glab processes=2 display-name=%{GROUP}
WSGIProcessGroup ms20
<Directory "/var/www-dev/wsgi-scripts">
Order allow,deny
Allow from all
</Directory>
是的,我使用的顯示名稱選項,它似乎非常清楚,請求在守護進程模式幾個月,現在處理。 (服務器上有兩臺運行PHP站點的虛擬主機,因此Apache進程正在使用它們)。錯誤(引用過期代碼)看起來像[[Thu Mar 01 16:06:12 2012] [error] [client ###。###。###。#] mod_wsgi(pid = 6649):處理WSGI腳本'/ var/www-dev/wsgi-scripts/ms20.wsgi'.'時發生異常,並且pid是兩個守護程序wsgi進程之一。我會在一秒鐘內將配置添加到我的問題中。 – jmilloy 2012-03-01 22:39:10
線程也如預期。我應該說服,還是我還有什麼要驗證? – jmilloy 2012-03-01 22:48:30
如果只有一個WSGI應用程序,則可以嘗試強制使用特定的子解釋器,以確保不會跨多個請求分割請求,儘管使用該配置它應該是可能的。因此,添加'WSGIApplicationGroup%{GLOBAL}'。 – 2012-03-02 01:10:32