我正准备部署我的Django应用程序,我注意到当我将"DEBUG"设置更改为False时,所有对静态文件的引用(即JavaScript,CSS等)都会导致HTTP 500
错误.
知道是什么导致了这个问题(以及如何解决它)?
我强烈建议您让Web服务器处理静态请求,而不要访问Django.在我看来urls.py
,我只在debug设置为True时才添加静态请求处理程序.
从技术上讲,服务于静态的Django可以正常工作.绝对阅读简短的文档页面,http://docs.djangoproject.com/en/dev/howto/static-files/.你会想要使用这样的条目urls.py
(r'^static/(?P.*)$', 'django.views.static.serve', {'document_root': '/path/to/media'})
听起来您可能正在尝试使用Django开发服务器来提供静态媒体.看看http://docs.djangoproject.com/en/dev/howto/deployment/一些部署场景/ HOWTO和http://docs.djangoproject.com/en/dev/howto/static-files/为如何提供静态文件(但请注意关于NOT在生产中使用这些方法的免责声明).
一般情况下,我会查看您的服务器日志,并查看它从哪里获取文件.我怀疑500错误确实是404错误,但它们变成500错误,因为Django无法找到或呈现404.html模板.如果不是这样的话,如果你能发布你得到的特定500错误会很有帮助.