在我的settings.py中,
STATIC_ROOT = '/home/khantthulinn/webapps/static_media/'
STATIC_URL = '/home/khantthulinn/webapps/static_media/'
在我的urls.py中,
urlpatterns = patterns('',
url(r'^admin/', admin.site.urls),
#Media
(r'^media/(?P<path>.*)$', 'django.views.static.serve', {
'document_root': settings.MEDIA_ROOT}),
)+ static(settings.STATIC_ROOT, document_root=settings.STATIC_ROOT)
之后,在我的网络服务器中,我复制了静态文件。
python manage.py collectstatic
一切都很好,我看得很清楚。
当我改变DEBUG = False时会出现问题。
我已经读过这篇文章,但我不明白。
https://docs.djangoproject.com/en/1.10/howto/static-files/deployment/
我也从这里读过解决方案。
Why does DEBUG=False setting make my django Static Files Access fail?
关闭调试Django将不会为您处理静态文件 更多 - 您的生产Web服务器(Apache或其他)应该采取 照顾那个。
我想尝试一下。我该怎么办?
我不想这样做,因为它不安全。
manage.py runserver --insecure
答案 0 :(得分:1)
您必须为/static
创建一个别名到它们本地的路径。阅读这个答案:
答案 1 :(得分:0)
如果您在mod_wsgi中使用apache,则需要更改wsgi.py
文件。
您需要插入的只是文件末尾的那些行:
from django.core.wsgi import get_wsgi_application
from django.contrib.staticfiles.handlers import StaticFilesHandler
application = StaticFilesHandler(get_wsgi_application())
请注意,我使用的是Django 1.8(LTS),我不太确定这些功能是否仍在实际版本中。