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 相关文章推荐
python比较2个xml内容的方法
May 11 Python
在Python中操作时间之mktime()方法的使用教程
May 22 Python
python日志记录模块实例及改进
Feb 12 Python
浅析python递归函数和河内塔问题
Apr 18 Python
python数据抓取分析的示例代码(python + mongodb)
Dec 25 Python
tensorflow实现简单的卷积神经网络
May 24 Python
Django框架模板介绍
Jan 15 Python
详解PyQt5信号与槽的几种高级玩法
Mar 24 Python
使用Python将Exception异常错误堆栈信息写入日志文件
Apr 08 Python
不到20行实现Python代码即可制作精美证件照
Apr 24 Python
基于python实现操作redis及消息队列
Aug 27 Python
如何利用Python 进行边缘检测
Oct 14 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 常见郁闷问题答解
2006/11/25 PHP
用mysql触发器自动更新memcache的实现代码
2009/10/11 PHP
深入PHP中的HashTable结构详解
2013/06/13 PHP
PHP编写简单的App接口
2016/08/28 PHP
thinkphp 字母函数详解T/I/N/D/M/A/R/U
2017/04/03 PHP
PHP实现批量重命名某个文件夹下所有文件的方法
2017/09/04 PHP
Laravel 5.5 的自定义验证对象/类示例代码详解
2017/08/29 PHP
javascript之通用简单的table选项卡实现(二)
2010/05/09 Javascript
jQuery之按钮组件的深入解析
2013/06/19 Javascript
Jquery使用css方法改变样式实例
2015/05/18 Javascript
整理Javascript基础语法学习笔记
2015/11/29 Javascript
JS如何设置cookie有效期为当天24点并弹出欢迎登陆界面
2016/08/04 Javascript
AngularJS  $modal弹出框实例代码
2016/08/24 Javascript
AngularJS实现动态编译添加到dom中的方法
2016/11/04 Javascript
jQuery简介_动力节点Java学院整理
2017/07/04 jQuery
AngualrJs清除定时器遇到的坑
2017/10/13 Javascript
深入解析vue 源码目录及构建过程分析
2019/04/24 Javascript
html2canvas属性和使用方法以及如何使用html2canvas将HTML内容写入Canvas生成图片
2020/01/12 Javascript
vue利用全局导航守卫作登录后跳转到未登录前指定页面的实例代码
2020/05/19 Javascript
python简单判断序列是否为空的方法
2015/06/30 Python
通过数据库对Django进行删除字段和删除模型的操作
2015/07/21 Python
Python给定一个句子倒序输出单词以及字母的方法
2018/12/20 Python
python中的函数递归和迭代原理解析
2019/11/14 Python
python实例化对象的具体方法
2020/06/17 Python
CSS3实现内凹圆角的实例代码
2017/05/04 HTML / CSS
美国祛痘、抗衰老药妆品牌:Murad
2016/08/27 全球购物
酒店公关部经理岗位职责
2013/11/24 职场文书
学生拾金不昧表扬信
2014/01/21 职场文书
自我推荐信范文
2014/05/09 职场文书
借款担保书范文
2014/05/13 职场文书
端午节演讲稿
2014/05/23 职场文书
企业委托书范本
2014/09/13 职场文书
2014年售票员工作总结
2014/11/19 职场文书
婚前协议书怎么写,才具有法律效力呢 ?
2019/06/28 职场文书
python基于opencv批量生成验证码的示例
2021/04/28 Python
Node实现搜索框进行模糊查询
2021/06/28 Javascript