Linux学习笔记-项目部署03

DEBUG=False时静态文件没法加载问题的解决。python

一、问题描述

在正式部署到服务器以前,设置settings.py中的参数DEBUG=False,此时启动django服务,但没法加载静态文件。 环境是Python3.6与Django2.1,web

二、缘由分析

出现的问题根本缘由是:当咱们在开发django应用时若是设置了 DEBUG = True,那么django便会自动帮咱们对静态文件进行路由;可是当咱们设置DEBUG = False后,这一功能便没有了,此时静态文件就会出现加载失败的状况,想要让静态文件正常显示,咱们就须要配置静态文件服务。django

三、解决方案

对web_02\setting.py进行修改:服务器

from django.contrib import admin
from django.urls import path
from django.conf.urls import url, include


from django.views import static		#新增
from django.conf import settings		#新增

urlpatterns = [
    path('admin/', admin.site.urls),
    url(r'', include('pages.urls')),

    url(r'^static/(?P<path>.*)$', static.serve, {'document_root': settings.STATIC_ROOT}, name='static'),  #新增
]

注意,配置静态文件服务后,不管是在本机启动django仍是在服务器上启动,都须要先运行以下命令,生成静态文件目录。url

python manage.py collectstatic
相关文章
相关标签/搜索