Django设置 DEBUG=False后静态文件无法加载解决
前段时间调试一直是在Debug=True先运行的,没有什么问题。今天关闭了Debug后,出现了一个问题。就是静态文件找不到了,「img、css、js」都提示404,无法准确的访问 static 静态文件。

环境是:Python3.7 Django2.2
出现的问题根本原因是:当我们在开发django应用时如果设置了 DEBUG = True,那么django便会自动帮我们对静态文件进行路由;但是当我们设置DEBUG = False后,这一功能便没有了,此时静态文件就会出现加载失败的情况,想要让静态文件正常显示,我们就需要配置静态文件服务了。参考官方文档https://docs.djangoproject.com/en/2.0/howto/static-files/
1. 首先修改App setting.py文件
STATIC_URL = '/static/'
STATIC_ROOT = 'static' ## 新增行
STATICFILES_DIRS = [
os.path.join(BASE_DIR, '/static/'), ##修改地方
]
2. 修改urls.py
from django.views import static ##新增
from django.conf import settings ##新增
from django.conf.urls import url ##新增 urlpatterns = [
path('', include('user.urls')),
## 以下是新增
url(r'^static/(?P<path>.*)$', static.serve,
{'document_root': settings.STATIC_ROOT}, name='static'),
]
到这里再运行应该是可以了,如果还有报STATIC_ROOT错。如果是下面的提示,请修改参见第一点的。

ERRORS: ?:
(staticfiles.E002) The STATICFILES_DIRS setting
should not contain the STATIC_ROOT setting. System check identified 1 issue (0 silenced)
.
os.path.join(BASE_DIR, '/static/'), #多加了/
“偶尔放纵,是对自己奖励?”
Django设置 DEBUG=False后静态文件无法加载解决的更多相关文章
- Django设置 DEBUG=False后静态文件无法加载
修改setting.py STATIC_URL = '/static/' STATIC_ROOT = 'static' ## 新增行 STATICFILES_DIRS = [ os.path.join ...
- Django settings.py设置 DEBUG=False后静态文件无法加载解决
解决办法: settings.py 文件 DEBUG = False STATIC_ROOT = os.path.join(BASE_DIR,'static') #新增 urls.py文件(项目的) ...
- Django项目关闭debug模式后,静态文件无法加载的解决办法
开启内置服务器,由于项目中local_settings.py文件中的DEBUG=True,进行开发和调试一直没什么问题. 但是现在需要编写404,500等出错页面,在debug模式下出了错都会出现报错 ...
- django 项目运行时static静态文件不能加载问题处理
一.首先检查网页中的加载路径是否正确,如果和文件所在路径不一致,就把html改下路径 二.加载路径和文件实际路径一致,看下配置文件: STATIC_URL = '/static/'STATIC_ROO ...
- 当Django中Debug=False,静态文件处理方式。
Django设置DEBUG为False时,'django.contrib.staticfiles'会关闭,即Django不会自动搜索静态文件,静态文件不能加载导致的问题有两个: 1.页面排版不正常,即 ...
- Django基础 - Debug设置为False后静态文件获取404
当设置setting.py文件当中的DEBUG=FALSE后,Django会默认使用Web Server的静态文件处理,故若没设置好Web Server对静态文件的处理的话,会出现访问静态文件404的 ...
- django 项目运行时media静态文件不能加载问题处理
一.检查网页中的加载路径 如果路径不正确,首选调整html路径(当然也可以调整文件路径或修改models中upload_to路径,但是不要轻易改): 二.重点: 如果加载路径和实践路径一致,请按以下步 ...
- [django]django 在apache2上部署静态文件如何加载
首先找到apache2的conf文件下的httpd.conf,添加如下信息: Alias /static/ E:/wamp/Apache24/www/static/ <Directory E:/ ...
- django在关闭debug后,admin界面 及静态文件无法加载的解决办法
当debug为true的时候,ALLOWED_HOSTS是跳过不管用的.所以这里需要将debug关掉,令debug=false,ALLOWED_HOSTS=[ '*' ]表示所有的主机都可以访问 开启 ...
随机推荐
- H5 canvas 绘图
H5的canvas绘图技术 canvas元素是HTML5中新添加的一个元素,该元素是HTML5中的一个亮点.Canvas元素就像一块画布,通过该元素自带的API结合JavaScript代码可以绘制 ...
- vue-learning:25 - component - 概念-定义-注册-使用-命名
概念 Vue遵循Web Component规范,提供了自己的组件系统.组件是一段独立的代码,代表页面中某个功能块,拥有自己的数据.JS.样式,以及标签.组件的独立性是指形成自己独立的作用域,不会对其它 ...
- Hbase概念原理扫盲
一.Hbase简介 1.什么是Hbase Hbase的原型是google的BigTable论文,收到了该论文思想的启发,目前作为hadoop的子项目来开发维护,用于支持结构化的数据存储. Hbase是 ...
- windows添加右键菜单
哔哔 有时候想要用websotrm打开一个项目, 有时候想要用VScode打开,最快的方法就是右键指定打开方式了 这些软件安装的时候会自带,但如果有些软件没有自带右键项,就得去注册表里手动添加 这些东 ...
- Python4_数据库相关操作
====================================================== 参考链接: PyCharm IDE 链接sqlite.建表.添加.查询数据:https:/ ...
- HBase01
https://blog.csdn.net/weixin_42641909/article/details/89428976 1. HBase Shell操作连接集群hbase shell 2. 创建 ...
- python写冒泡排序
冒泡就是重复地遍历要排序的数列,一次比较两个元素(泡泡),如果他们的顺序错误就把他们交换过来,像泡泡一样,依次按照顺序上升排列. 冒泡排序算法的运作如下: 比较相邻的元素.如果第一个比第二个大(升序) ...
- MyISAM与InnoDB的索引实现区别
一 MyISAM索引实现 1. 主键索引 MyISAM引擎使用B+树作为索引结果,叶节点的data域存放的是数据记录的地址.下图为MyISAM表的主索引,Col1为主键. 2. 辅助索引 在MyISA ...
- 利用Python实现高度定制专属RSS
前言 本文转载自个人博客网站,欢迎来访订阅.本篇属于定制RSS系列终极一弹,是三种方式中自由度最高.定制化最强的,也需要一定的编程能力.附上前两篇链接:1.利用Feed43为网站自制RSS源:2.如何 ...
- tomcat 配置项目前缀(推荐方式四)
一. 显示配置 Context 的 path 需要在 server.xml 文件中手动配置. <Host name="localhost" appBase="w ...