1. 程式人生 > 程式設計 >解決django無法訪問本地static檔案(js,css,img)網頁裡js,cs都載入不了

解決django無法訪問本地static檔案(js,css,img)網頁裡js,cs都載入不了

1.今天網上下載一個部落格專案,發現本地訪問,js,css載入不了.

我想應該是專案上線的安全措施,但是我想除錯專案.找到方法如下

在settings.py裡面編輯

解決django無法訪問本地static檔案(js,css,img)網頁裡js,cs都載入不了

新增

STATICFILES_DIRS = (
  os.path.join(BASE_DIR,'static'),)

另外把

STATIC_ROOT = os.path.join(BASE_DIR,'static')

改為

STATIC_ROOT = os.path.join(BASE_DIR,'static1')

即這裡面的static不能和上面的一樣,換個名字.

補充知識:linux下使用uwsgi部署django專案時 靜態檔案不能正常載入

在 linux 下需要用 python-admin 來開 django 的服務,如果你是 python3 那麼命令應為 python3-admin manage.py runserver 可以正常訪問頁面,沒有靜態載入的問題

在配置 uwsgi 時需要更改專案 settings.py 中的設定,更改專案如下

debug=False

allow_host=[‘*']

靜態檔案重定位 STATIC_ROOT =os.path.join(BASE_DIR,”/var/www”)

再進行靜態檔案的轉移 在專案目錄下進行: Python3 manage.py collectstatic 這一步的順序很重要,否則路徑會有問題.

然後配置 uwsgi 有許多方法,我採用的是下面的一種 在專案目錄下新建 socket.xml 檔案(與 manage.py 同級)內容如下:

解決django無法訪問本地static檔案(js,cs都載入不了

這時可以用下面這個命令去執行專案 Uwsgi –http :8000 –chdir /home/user/project/hello –module hello.wsgi –static-map=/static=/var/www/ 也可以正常訪問頁面,包括載入靜態頁面

nginx的配置問題

配置 nginx 主要進行兩個檔案的修改,兩個檔案都在/etc/nginx 目錄下 一個是 nginx.conf,需要修改的內容為: 將第一行定位使用者的名字改為你的使用者文字,我的是 root 第二個檔案時 sites-available/sites-enable 目錄下的 default 檔案

解決django無法訪問本地static檔案(js,cs都載入不了

哦,還有一步很重要,需要將專案和靜態檔案的許可權更改一下,改為你的使用者可以訪問,讀取,執行,:chmod –R 755 目錄.

以上這篇解決django無法訪問本地static檔案(js,cs都載入不了就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。