受Django版本更新的影響,其靜態文件配置很亂,網上有各類說法,其實大多有道理的,只是沒說明是針對哪一個版本的Django。但1.4版本(可能包括其以後的版本)靜態文件配置至關簡單,在此記錄下。 html
│ manage.py │ ├─hello │ │ models.py │ │ tests.py │ │ views.py │ │ __init__.py │ │ │ └─static │ a.txt │ ├─templates └─untitled settings.py urls.py wsgi.py __init__.py
以上的靜態文件訪問無需對Django作任何配置,因Django自動開啓了settings.py文件下INSTALLED_APPS的'django.contrib.staticfiles'。這裏並未在urls.py裏設置如下的代碼,雖網上不少說這是必需的,但至少在1.4版本下是非必需的 python
from django.contrib.staticfiles.urls import staticfiles_urlpatterns urlpatterns += staticfiles_urlpatterns()
如今可以確認的是Django處理靜態文件的是下面這個庫文件:
shell
\Lib\site-packages\django\contrib\staticfiles\finders.py
生產環境下通常是把靜態文件放在項目根目錄下的static目錄下。以百度應用引擎(BAE)爲例: django
PS:測試過程當中發現BAE竟對靜態文件的後綴名大小寫敏感,本地開發環境下卻沒有此現象。 服務器
參考:
http://blog.yangyubo.com/2012/07/26/django-staticfiles/
http://www.cnblogs.com/bourneli/archive/2013/01/21/2869327.html app