Djngao專案部署到伺服器--之--靜態檔案無法載入
阿新 • • 發佈:2018-12-12
Django專案部署到centos中,按照如下步驟執行:
將Django專案中的settings.py檔案中的DEBUG模式設定未Flase模式;並在靜態檔案部分配置靜態檔案根目錄:
STATIC_ROOT = os.path.join(BASE_DIR,'static_dist')
在伺服器的專案檔案下,執行如下命令收集靜態檔案:
python manage.py collectstatic
然後執行開始執行專案;發現專案執行成功。網頁訪問時,顯示介面沒有載入靜態檔案。
檢查之前的操作步驟等,並沒有發現問題,之後繼續查詢原因發現有這樣一條命令:
# 這條命令是仍然呼叫本地的靜態檔案,而不是collectstatic收集的檔案 python manage.py runserver 0.0.0.0:8000 --insecure
可以呼叫本地的靜態檔案,但是實際並未解決問題,待問題解決後,繼續更新
參考:
https://stackoverflow.com/questions/5836674/why-does-debug-false-setting-make-my-django-static-files-access-fail
補充:
這裡因為沒有使用nginx
+uwsgi
部署,關閉DEBUG後,Django
內建伺服器預設不再通過訪問專案根目錄下的static
檔案所以,所有的靜態檔案不能訪問。
可以使用nginx
+uwsgi
的模式,nginx
負責靜態服務、uwsgi
負責動態檔案的訪問。
具體的部署問題,後面有時間回總結下來進行說明。