Apache-2.2

Django 錯誤提示“無法連接到伺服器:權限被拒絕”

  • March 7, 2012

我在嘗試訪問我的 Django 應用時遇到錯誤。我正在執行 Gentoo,Web 伺服器是 Apache,帶有 mod_wsgi 模組來顯示 Django。錯誤說

OperationalError at /admin/
could not connect to server: Permission denied
Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?

我知道 Django 可以連接到 Postgres 數據庫,因為我可以python manage.py syncdb成功執行。我也可以使用psql -U root -d mysite.

ls -la插座是

root@ip-99-99-99-99 /var/run/postgresql # ls -la
total 12K
drwxr-x--- 2 postgres 4.0K Mar  7 18:39 ./
drwxr-xr-x 6 root     4.0K Mar  7 22:58 ../
srwxrwxrwx 1 postgres    0 Mar  7 23:31 .s.PGSQL.5432
-rw------- 1 postgres   71 Mar  7 23:31 .s.PGSQL.5432.lock

好奇……作為一個快速測試,嘗試執行chmod o+rx /var/run/postgresql——如果這能解決問題(我懷疑它會),那麼你需要診斷為什麼目錄上的權限被搞砸了。在我的系統(Debian Squeeze)上,權限是 2775 postgres:postgres; 雖然沒有必要具有該特定模式,但您希望(至少) o+x 允許其他使用者遍歷目錄以訪問套接字。

引用自:https://serverfault.com/questions/367435