[英]Why is django's development automatic static file server not suitable for production?
[英]How to override django static file development server?
我開始使用應用程序'django.contrib.staticfiles'將靜態文件收集到我項目的/ static /目錄中。
問題是,當我使用django開發服務器(manage.py runserver)時,它會自動提供靜態文件。
它通常很好,但在我的情況下,我想自己提供這些靜態文件。
我想在urls.py文件中添加類似的內容:
urlpatterns += patterns('',
url('^static/(?P<path>.*)$', myStaticMediaServe,{'document_root': settings.STATIC_ROOT ,'show_indexes': True}),
)
問題是'django.contrib.staticfiles'應用程序在settings.DEBUG = True時優先使用'/ static /'url:我找不到讓Django在使用時使用我的'/ static /'urlpattern描述的方法調試模式
如果我從settings.py中刪除'django.contrib.staticfiles':我的'/ static /'urlpattern可以工作,但是我收集了靜態文件。
你有想法使用'django.contrib.staticfiles'並通過urlpattern描述使用我自己的靜態文件服務器並且有settins.DEBUG = True
我發現,默認情況下,django'rowserver'本身,preempts / static / urls:即使使用自定義中間件,你也不能強迫django指向你的代碼'/ static /'。
我找到的唯一解決方案:對'./manage.py runserver'使用--nostatic選項,然后可以使用自己的url模式和視圖來提供靜態文件。
將DEBUG
設置為False
。 當Django為True
時,它只提供靜態文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.