我想通過django 1.5內置開發服務器啓用服務靜態文件。我遇到了一個奇怪的問題。django 1.5.4中的STATIC_URL問題
如果我使用localhost:8000/static/staticstyle.css
向我的靜態文件發出請求,那麼它會迴應我找不到。但是,如果我向STATIC_URL
中提及的相同文件提出請求並添加url模式作爲"url(r'^anyval_other_than_mentioned_STATIC_URL/', django.views.static.serve,{'document_setting':settings.STATIC_ROOT}), "
,則它會以304
(這是條件獲取)作爲響應。
我收集了設置文件中靜態目錄設置中的所有靜態文件,並啓用了該模板所需的所有上下文處理器。
對於生產我已經使用nginx來提供靜態文件,所以沒有問題。
我的settings.py看起來像
STATIC_ROOT = APPLICATION_PATH+"/static/"
STATIC_URL = '/static/'
STATICFILES_DIRS = (
('vendors',APPLICATION_PATH+'/vendors'),
('admin/assets/',APPLICATION_PATH+'/templates/admin/assets'),
# Put strings here, like "/home/html/static" or "C:/www/django/static".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
)
我的應用程序urls.py看起來像
urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
) + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
任何提示將高度讚賞。
謝謝。
您可以使用findstatic追蹤錯誤,https://docs.djangoproject.com/en/1.6/ref/contrib/staticfiles/#findstatic – maazza