在我的 nginx 服務器上,如果人們使用 /media 路徑,他們可以看到包含每個檔案的整個檔案夾的串列。我怎樣才能阻止人們看到它,比如 404 頁面。但是我一般不能禁用它,因為我在其他頁面上參考了帶有影像和內容的路徑。所以總而言之,我需要為用戶禁用 /media 路徑,而不是為服務器本身禁用。
我正在使用 Django。
問候并感謝您的幫助
uj5u.com熱心網友回復:
我懷疑您的 nginx 配置了autoindex on它將為請求的路徑生成完整的目錄串列。為您的網站提供靜態內容時,您通常希望禁用autoindex.
Nginx檔案提供了有關這些設定的更多詳細資訊。
uj5u.com熱心網友回復:
我認為您只是偶然發現了 Django 中的一個常見問題。對我來說,有幾種解決方案,但解決方案可能會出現問題:
- 您可以通過 nginx 和 django 禁用以靜態方式提供媒體檔案,并撰寫路由來檢查每個檔案模式的某些條件。這給了你很大的靈活性(你可以在 Django 中做任何事情),但你的性能會更差,因為 Django 需要發送檔案而不是 Nginx
- 我認為有一個解決方案(以前從未測驗過)只通過 NGINX 內部后端提供媒體檔案,然后讓你的 Django 進行檢查,然后在內部重定向到 NGINX 將提供的相應檔案
編輯:我認為這個答案解釋了后者https://stackoverflow.com/a/43223478/9938410
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/403239.html
標籤:
上一篇:CORS:“Access-Control-Allow-Origin”標頭的值“http://localhost:3000”不等于提供的原點
