解決方案
把DEBUG
從True
改成False
后就會出現(xiàn)404(必需指定404和500錯語頁面,如上圖的目錄結構)找不到頁面的錯誤麦射。原因是DEBUG
為True
時django會默認幫我們處理靜態(tài)文件,而為False
的話還需要我們做點事王污。在全局urls.py
中加下如下代碼:
from django.views import static
from django.conf import settings
from django.conf.urls import url
urlpatterns = [
url(r'^static/(?P<path>.*)$', static.serve,
{'document_root': settings.STATIC_ROOT}, name='static'),
]
修改settings.py
中的設置重抖,
這里改為自己定義的執(zhí)行過python manage.py collectstatic
命令的文件夾:
STATIC_ROOT = os.path.join(BASE_DIR, "StaticServer")
總結
- 在
DEBUG
為true
時我們只需要建立static目錄后,把靜態(tài)資源放進去就可以訪問踪古。 - 在
DEBUG
為False
時需要我們手動指定靜態(tài)資源目錄伴挚,并配置映射關系。 - 在正式環(huán)境下建議不采用django處理靜態(tài)資源文件灾炭,這樣對應用服務器壓力較大茎芋,也不好做cdn◎诔觯可以用ngix,apache部署靜態(tài)資源田弥。