2011-10-04 131 views
1

我不是任何類型的Linux專家。只需爲我的Django網站設置我自己的服務器。Nginx,Gunicorn,Virtualenv和Django - 403 Forbidden

我的理解是因爲用戶沒有正確的權限?如果是這樣,我們在談論什麼用戶軟件?

是否「用戶」沒有權限讀取該應用程序所在的目錄?

我跟着這個嘖嘖:Tutorial

回答

1

我們正在談論的是Gunicorn(應用程序服務器)下運行的用戶。要在命令行上檢查運行htop並搜索gunicorn進程。理想情況下,它應該在它自己的用戶(gunicorn:gunicorn)下運行,並且你應該確保你的應用程序的項目文件夾被適當地保護 - 大多數文件只需要是隻讀的(對gunicorn),但你也需要gunicorn才能寫媒體文件夾(如果用戶上傳等)。你只需要確保文件沒有寫任何人,除非gunicorn(即755)

FYI:

Nginx的是Web服務器/代理服務器,它被配置爲傳遞請求您的應用程序的任何連接(通過例如http://myapp.com)將其轉移到應用程序服務器上。 Gunicorn反過來被配置爲運行Django,它坐在一個不錯的封裝virtualenv中。

Supervisor(文章中提到)是一個用於啓動,停止和管理所有上述過程的python應用程序,非常方便。