Django 404、500页面全局配置知识点详解


Posted in Python onMarch 10, 2020

django版本为2.2.7,全局配置404、500页面,解决静态文件路径等问题

urls中编写

urlpatterns = [
 ..............
]
handler404 = 'first.views.page_not_found' #handler404为固定写法,first.views.page_not_found为404处理函数的位置
handler500 = 'first.views.page_error' #同上

指定的views中

#全局404
def page_not_found(request,exception):
  from django.shortcuts import render_to_response
  response = render_to_response('first/404.html',{}) #first/404.html html页面
  response.status_code = 404
  return response

#全局500
def page_error(exception):
  from django.shortcuts import render_to_response
  response = render_to_response('first/500.html',{})
  response.status_code = 500
  return response

保存运行 在地址栏输入一个不存在的页面

Django 404、500页面全局配置知识点详解

会发现并没有进入我们的配置,这需要我们在settings中进行配置

找到下发这个

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = []

修改为

DEBUG = False #关闭debug模式 这时为生产模式,在将项目部署到服务器时也需要关闭,debug模式会暴露站点的多种信息
ALLOWED_HOSTS = ['*'] # * 为所有都可访问,部署服务器时需修改

保存后运行

Django 404、500页面全局配置知识点详解

进入了配置,但按下F12发现所有的静态文件如css、js、图片等都没找到,都是404

再进入settings文件,因为我们开启了生产模式所以Django不再代理静态文件,可以通过配置来再次代理

找到我们曾经写的media及static配置

MEDIA_URL = '/media/' 
MEDIA_ROOT = os.path.join(BASE_DIR, "media")
STATIC_URL = '/static/'
STATICFILES_DIRS =[
  os.path.join(BASE_DIR, 'static'),
]
将
STATICFILES_DIRS =[
  os.path.join(BASE_DIR, 'static'),
] 注释
增加
STATIC_ROOT = os.path.join(BASE_DIR,'static')
保存后在URLS中添加
from django.urls import path,re_path
from tlmzp.settings import MEDIA_ROOT,STATIC_ROOT
from django.views.static import serve
urlpatterns = [
  ..................
  re_path(r'^media/(?P<path>.*)$', serve, {'document_root': MEDIA_ROOT}), #media文件
  re_path(r'^static/(?P<path>.*)$', serve, {'document_root': STATIC_ROOT}),#static文件
]

保存后刷新页面

Django 404、500页面全局配置知识点详解

所有的静态文件就都加载了

到此这篇关于Django 404、500页面全局配置知识点详解的文章就介绍到这了,更多相关Django 404、500页面全局配置内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中的条件判断语句与循环语句用法小结
Mar 21 Python
python简单线程和协程学习心得(分享)
Jun 14 Python
Python中实现最小二乘法思路及实现代码
Jan 04 Python
Python实现手写一个类似django的web框架示例
Jul 20 Python
python 将list转成字符串,中间用符号分隔的方法
Oct 23 Python
python3.6利用pyinstall打包py为exe的操作实例
Oct 31 Python
Python中new方法的详解
Jan 15 Python
Django xadmin开启搜索功能的实现
Nov 15 Python
Python selenium页面加载慢超时的解决方案
Mar 18 Python
python实现图片素描效果
Sep 26 Python
Python数据可视化之用Matplotlib绘制常用图形
Jun 03 Python
Python  lambda匿名函数和三元运算符
Apr 19 Python
python使用gdal对shp读取,新建和更新的实例
Mar 10 #Python
Python实现获取当前目录下文件名代码详解
Mar 10 #Python
python爬虫开发之使用python爬虫库requests,urllib与今日头条搜索功能爬取搜索内容实例
Mar 10 #Python
python+gdal+遥感图像拼接(mosaic)的实例
Mar 10 #Python
python获取栅格点和面值的实现
Mar 10 #Python
Python列表切片常用操作实例解析
Mar 10 #Python
Python numpy多维数组实现原理详解
Mar 10 #Python
You might like
随机头像PHP版
2006/10/09 PHP
打造计数器DIY三步曲(中)
2006/10/09 PHP
php基础知识:函数基础知识
2006/12/13 PHP
php下几个常用的去空、分组、调试数组函数
2009/02/22 PHP
php+mysql 实现身份验证代码
2010/03/24 PHP
通过缓存数据库结果提高PHP性能的原理介绍
2012/09/05 PHP
浅谈web上存漏洞及原理分析、防范方法(文件名检测漏洞)
2013/06/29 PHP
注意:php5.4删除了session_unregister函数
2013/08/05 PHP
ThinkPHP的MVC开发机制实例解析
2014/08/23 PHP
PHP通过内置函数memory_get_usage()获取内存使用情况
2014/11/20 PHP
浅析php如何实现爬取数据原理
2018/09/27 PHP
用js实现随机返回数组的一个元素
2007/08/13 Javascript
js获取本机的外网/广域网ip地址完整源码
2013/08/12 Javascript
js中AppendChild与insertBefore的用法详细解析
2013/12/16 Javascript
jquery无刷新验证邮箱地址实现实例
2014/02/19 Javascript
JQuery调用绑定click事件的3种写法
2015/03/28 Javascript
BootstrapTable请求数据时设置超时(timeout)的方法
2017/01/22 Javascript
angular json对象push到数组中的方法
2018/02/27 Javascript
GOJS+VUE实现流程图效果
2018/12/01 Javascript
深入koa-bodyparser原理解析
2019/01/16 Javascript
js的各种数据类型判断的介绍
2019/01/19 Javascript
elementui更改el-dialog关闭按钮的图标d的示例代码
2020/08/04 Javascript
Python第三方库xlrd/xlwt的安装与读写Excel表格
2017/01/21 Python
CentOS 6.5下安装Python 3.5.2(与Python2并存)
2017/06/05 Python
widows下安装pycurl并利用pycurl请求https地址的方法
2018/10/15 Python
python实时检测键盘输入函数的示例
2019/07/17 Python
django fernet fields字段加密实践详解
2019/08/12 Python
python打印n位数“水仙花数”(实例代码)
2019/12/25 Python
解决tensorflow训练时内存持续增加并占满的问题
2020/01/19 Python
Top Villas美国:豪华别墅出租和度假屋
2018/07/10 全球购物
XD健身器材:Kevlar球、Crossfit健身球
2019/03/26 全球购物
优秀共产党员先进事迹
2014/01/27 职场文书
2014年保安个人工作总结
2014/11/13 职场文书
2016年“5.12”国际护士节活动总结
2016/04/06 职场文书
2019脱贫攻坚工作总结报告范本!
2019/08/06 职场文书
基于python实现银行管理系统
2021/04/20 Python