2013-03-12 59 views
0

服務器文件首先道歉,如果這是一個非常愚蠢的問題。從/媒體/使用nginx

好的 - 我正在寫一個小應用程序,它是供個人使用的,使用Flask + nginx。

我已經安裝了nginx和flask,而nginx很開心地服務了Flask應用程序的靜態資源。我現在要做的是在Ubuntu服務器上從/media/服務器上的所有媒體文件。

基本上我希望nginx能夠訪問和服務器在/media可用的任何文件,這可能是一個USB驅動器,SD卡,不管。

我已經建立了與nginx的靜態和媒體的別名:

location /static { 
    alias /path/to/my/app/static; 
} 

location /media { 
    alias /media; 
} 

,我敢肯定,nginx的是幸福的,因爲如果我的靜態路徑複製到介質別名得到我的靜態文件。

當我指向localhost/media的時候,我只是得到一個空白頁面(而不是nginx 403禁止頁面)。

我已經嘗試將/media的權限更改爲744 - 不變。爲什麼我不能'看'/media目錄可能有一些根本原因嗎?

任何幫助非常感謝。

回答

0

這看起來像一個權限問題。可執行位是需要通過目錄,所以我想chmod -R 0755 /media會做的伎倆。有一種方法可以將這個應用到目錄上,這樣做會更安全,但即使在所有文件中,這對個人使用都不是問題。

+0

所以經過一些修正和更改權限後,我可以看到帶有nginx的'/ media'目錄。但是,我不能再往樹下進入SD卡。現在我得到了實際的403頁。爲了確保nginx能夠查看任何USB驅動器/ SD卡上的所有文件,最好的方法是什麼?我應該將nginx權限更改爲root嗎? – 2013-03-13 17:12:05

+0

不要給nginx根權限,根據任何人這是一個壞主意。我認爲,你的位置也取決於可移動媒體的文件系統類型。在這裏,我必須說,我不確定以下內容,但可能會提供www數據,用戶組可以幫助您。這與以root運行nginx相同,但危險性要小得多。值得一試。 – Johnride 2013-03-13 20:49:32

+0

@達爾文技術公司 - 如果你能找出哪些用戶和組織在媒體上的文件屬於哪個,這將有很大的幫助。 – Bart 2013-03-14 22:49:44