2011-07-02 75 views
1

這非常奇怪。Django 1.3:關閉後無法訪問靜態文件DEBUG

在我的開發機器上,當我設置DEBUG = True時,一切似乎都很好,但是如果關閉它,它會中斷。

我可以看到請求的URL完全相同。這有什麼可能的原因?

In url 

+ static("static", document_root= STATIC_ROOT) 

STATIC_ROOT是靜態文件夾的絕對路徑,沒關係,打開調試時它的工作成本。

回答

3

從Django文檔關於serving static files in development

這如果DEBUG爲True纔有效。

這是因爲這種觀點是嚴重的 低效率,可能不安全。 這隻適用於本地 開發,並且決不能在生產中使用 。

總之,如果您使用的是devserver,而DEBUGFalse,則不會提供靜態文件。

+0

+1此外,只添加靜態文件服務[如果DEBUG爲true](https://docs.djangoproject.com/en/1.2/howto/static-files/#limiting-use-to-debug-true)否則使用適當的Web服務器。 –

1

雖然我解決了這個問題,通過

URL(R '^靜態/(P *)$?', 'django.views.static.serve',更換URL配置{ 'DOCUMENT_ROOT':STATIC_ROOT }),

但我想知道爲什麼?