2016-12-28 80 views
0

我試圖用DEBUG=False在部署模式下運行我的django站點。事實上,當我做一個python manage.py collectstatic它將收集所有靜態文件到我的文件夾/mysite/static。但是當我加載我的主頁我的靜態文件將不會加載Not Found發生。Django:collectstatic工程,但沒有找到正確的靜態文件夾

我的Django的版本是1.10.4 這裏是我的靜態根的定義和URL文件夾:

settings.py

STATIC_URL = '/static/' 

STATIC_ROOT = os.path.join(BASE_DIR, "static") (i tried also just only 'static') 

MEDIA_ROOT = BASE_DIR + '/mysite/media' 

MEDIA_URL = '/media/' 

urls.py

urlpatterns = [ 
    url(r'', include('mysite.urls')), 
] 

urlpatterns += staticfiles_urlpatterns() 

我注意到這不是假設我的collectstatic文件夾,而是正在考慮應用程序文件夾中的靜態文件。

python manage.py findstatic mysite/js/javascript.js

Found 'app/js/javascript.js' here: 
/home/user/mysite/app/static/app/js/javascript.js 

好了,一旦DEBUG=False應該看到這樣的信息:

/home/user/mysite/static/app/js/javascript.js 
+1

你配置你的服務器以滿足'yourdomain.com /靜態/'從'STATIC_ROOT'文件夾? – knbk

+0

嗯,我認爲這是沒有必要的,因爲我已經開始一個新的Django站點,它的工作原理都可以。沒有'yourdomain.com/static /' – ePascoal

+0

@MrMartin cf https://docs.djangoproject.com/zh/1.10/REF /了contrib/staticfiles / –

回答

2

在生產服務器上,你的nginx或Apache應該服務於靜態文件。當Debug = False時,django停止提供靜態文件。請分享你的nginx的設置,我可以幫你在那裏......

欲瞭解更多信息,請this link

相關問題