Apache-2.2
未找到目標 WSGI 腳本或無法統計
這個問題折磨了我好幾天。我在我的樹莓派上使用 Apache、WSGI 和 django。作業系統是 Raspbian。
一切都很好,除了來自 apache 的這個錯誤。
[error] [client 127.0.0.1] Target WSGI script not found or unable to stat: /home/pi/EZ_Green/apache/ems_gateway_django.wsgi
我的配置文件是這樣的,很簡單
WSGIDaemonProcess ems.ezgreenbuildings.com processes=1 maximum-requests=100 threads=10 WSGIScriptAlias / /home/pi/EZ_Green/apache/ems_gateway_django.wsgi
文件路徑肯定是完整路徑。所以文件存在。然後我以為apache伺服器程序沒有訪問文件的權限,所以我把wsgi文件的模式改成777,但是還是報同樣的錯誤。
我已經搜尋了一段時間,並嘗試了幾種方法。
- 將 wsgi 文件移動到另一個文件夾,比如“/var/www”,但它仍然找不到它。
- 嘗試重新安裝apache,不起作用。
- 刪除尾部斜杠
奇怪的是,如果我刪除 wsgi 配置文件,apache 工作正常。如果我執行 django 提供的測試伺服器,django 本身就可以正常工作。
如果有人可以提供幫助,我將非常高興。謝謝!
您是否啟用了 SELinux 擴展,阻止 Apache 訪問文件所在的目錄?
主目錄上的權限是否允許 Apache 訪問?僅文件可讀是不夠的,所有目錄也必須是可訪問的。
不相關,但是您是否有一個 WSGIProcessGroup 指令來對應於 WSGIDaemonProcess 以便請求實際上被委託在守護程序中執行?
最後,您可以取消“processes=1”,因為它預設為單個程序,並且為任何數字設置“processes”具有其他含義,因為它會在 WSGI 環境中標記它是多程序配置。