Django实现自定义404,500页面教程


Posted in Python onMarch 26, 2017

1.创建一个项目

django-admin.py startproject HelloWorld

2.进入HelloWorld项目,在manage.py的同一级目录,创建templates目录,并在templates目录下新建404.html,500.html两个文件。

3.修改settings.py

(1.)DEBUG修改为False,(2.)ALLOWED_HOSTS添加指定域名或者IP,(3.)指定模板路径 ‘DIRS' : [os.path.join(BASE_DIR,‘templates')],

# SECURITY WARNING: don't run with debug turned on in production!


DEBUG = False


ALLOWED_HOSTS = ['localhost','www.example.com', '127.0.0.1']



TEMPLATES = [


 {


  'BACKEND': 'django.template.backends.django.DjangoTemplates',


  'DIRS': [os.path.join(BASE_DIR, 'templates')],


  'APP_DIRS': True,


  'OPTIONS': {


   'context_processors': [


    'django.template.context_processors.debug',


    'django.template.context_processors.request',


    'django.contrib.auth.context_processors.auth',


    'django.contrib.messages.context_processors.messages',


   ],


  },


 },


]

4.新建一个views.py

from django.http import HttpResponse

from django.shortcuts import render_to_response

from django.views.decorators.csrf import csrf_exempt

@csrf_exempt

def hello(request):

 return HttpResponse('Hello World!')

@csrf_exempt

def page_not_found(request):

 return render_to_response('404.html')

@csrf_exempt

def page_error(request):

 return render_to_response('500.html')

5.修改urls.py,代码如下

from django.conf.urls import url
from django.contrib import admin
import HelloWorld.views as view
urlpatterns = [
 url(r'^admin/', admin.site.urls),
 url(r'^test$', view.hello),
]
handler404 = view.page_not_found
handler500 = view.page_error

重新编译,重启uwsgi,输入localhost/HelloWorld/test,显示'Hello World!',输入其它地址会显示404.html内容,如果出错则显示500.html内容。

Python 相关文章推荐
python3实现抓取网页资源的 N 种方法
May 02 Python
Python使用Matplotlib实现雨点图动画效果的方法
Dec 23 Python
Python Scapy随心所欲研究TCP协议栈
Nov 20 Python
python pands实现execl转csv 并修改csv指定列的方法
Dec 12 Python
Python简单I/O操作示例
Mar 18 Python
Python 中的 global 标识对变量作用域的影响
Aug 12 Python
python requests抓取one推送文字和图片代码实例
Nov 04 Python
浅谈Tensorflow 动态双向RNN的输出问题
Jan 20 Python
Tensorflow中的降维函数tf.reduce_*使用总结
Apr 20 Python
Python打印特殊符号及对应编码解析
May 07 Python
Python实现文件压缩和解压的示例代码
Aug 12 Python
Python如何用re模块实现简易tokenizer
May 02 Python
Python 多线程实例详解
Mar 25 #Python
解决python3 urllib中urlopen报错的问题
Mar 25 #Python
Python制作Windows系统服务
Mar 25 #Python
Python 类的继承实例详解
Mar 25 #Python
python利用拉链法实现字典方法示例
Mar 25 #Python
python3实现ftp服务功能(服务端 For Linux)
Mar 24 #Python
python3实现ftp服务功能(客户端)
Mar 24 #Python
You might like
php中memcache 基本操作实例
2015/05/17 PHP
PHP设置头信息及取得返回头信息的方法
2016/01/25 PHP
php语言的7种基本的排序方法
2020/12/28 PHP
php app支付宝回调(异步通知)详解
2018/07/25 PHP
javascript 学习之旅 (3)
2009/02/05 Javascript
jQuery 树形结构的选择器
2010/02/15 Javascript
在多个页面使用同一个HTML片段的代码
2011/03/04 Javascript
javascript 上下banner替换具体实现
2013/11/14 Javascript
js创建对象的区别示例介绍
2014/07/24 Javascript
javascript使用window.open提示“已经计划系统关机”的原因
2014/08/15 Javascript
完美兼容IE,chrome,ff的设为首页、加入收藏及保存到桌面js代码
2014/12/17 Javascript
JavaScript返回网页中超链接数量的方法
2015/04/03 Javascript
node-http-proxy修改响应结果实例代码
2016/06/06 Javascript
Bootstrap编写一个在当前网页弹出可关闭的对话框 非弹窗
2016/06/30 Javascript
原生JS封装_new函数实现new关键字的功能
2018/08/12 Javascript
vue watch深度监听对象实现数据联动效果
2018/08/16 Javascript
Vue2.0点击切换类名改变样式的方法
2018/08/22 Javascript
vue 中Virtual Dom被创建的方法
2019/04/15 Javascript
利用vue-i18n实现多语言切换效果的方法
2019/06/19 Javascript
javascript实现文字跑马灯效果
2020/06/18 Javascript
vue实现点击按钮“查看详情”弹窗展示详情列表操作
2020/09/09 Javascript
详解vue 组件注册
2020/11/20 Vue.js
基于python 处理中文路径的终极解决方法
2018/04/12 Python
PyQt5 对图片进行缩放的实例
2019/06/18 Python
使用turtle绘制五角星、分形树
2019/10/06 Python
Python实现从N个数中找到最大的K个数
2020/04/02 Python
Python使用configparser读取ini配置文件
2020/05/25 Python
什么是Python包的循环导入
2020/09/08 Python
HTML5里autofocus自动聚焦属性使用介绍
2016/06/22 HTML / CSS
Bloomingdale’s阿联酋:选购奢华时尚、美容及更多
2020/09/22 全球购物
我爱家乡演讲稿
2014/09/12 职场文书
2014年医院科室工作总结
2014/12/20 职场文书
违规违纪检讨书范文
2015/05/06 职场文书
预备党员入党感想
2015/08/10 职场文书
MySQL令人大跌眼镜的隐式转换
2021/08/23 MySQL
springboot中rabbitmq实现消息可靠性机制详解
2021/09/25 Java/Android