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函数返回值实例分析
Jun 08 Python
Python+Opencv识别两张相似图片
Mar 23 Python
浅析Python中的for 循环
Jun 09 Python
K-means聚类算法介绍与利用python实现的代码示例
Nov 13 Python
python素数筛选法浅析
Mar 19 Python
Python 输入一个数字判断成绩分数等级的方法
Nov 15 Python
浅谈python中str字符串和unicode对象字符串的拼接问题
Dec 04 Python
浅谈python str.format与制表符\t关于中文对齐的细节问题
Jan 14 Python
python机器学习库scikit-learn:SVR的基本应用
Jun 26 Python
Python 硬币兑换问题
Jul 29 Python
使用批处理脚本自动生成并上传NuGet包(操作方法)
Nov 19 Python
Python实现byte转integer
Jun 03 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
全国FM电台频率大全 - 9 上海市
2020/03/11 无线电
PHP 强制下载文件代码
2010/10/24 PHP
PHP把网页保存为word文件的三种方法
2014/04/01 PHP
window.addeventjs事件驱动函数集合addEvent等
2008/02/19 Javascript
javascript cookies操作集合
2010/04/12 Javascript
jQuery下扩展插件和拓展函数的写法(匿名函数使用的典型例子)
2010/10/20 Javascript
jQuery .tmpl(), .template()学习资料小结
2011/07/18 Javascript
jQuery 无刷新分页实例代码
2013/11/12 Javascript
Extjs的FileUploadField文件上传出现了两个上传按钮
2014/04/29 Javascript
微信小程序  网络请求API详解
2016/10/25 Javascript
通过构造函数实例化对象的方法
2017/06/28 Javascript
Bootstrap一款超好用的前端框架
2017/09/25 Javascript
webpack本地开发环境无法用IP访问的解决方法
2018/03/20 Javascript
JavaScript查看代码运行效率console.time()与console.timeEnd()用法
2019/01/18 Javascript
基于jQuery实现可编辑的表格
2019/12/11 jQuery
Vue+Node服务器查询Mongo数据库及页面数据传递操作实例分析
2019/12/20 Javascript
JavaScript如何使用插值实现图像渐变
2020/06/28 Javascript
整理Python中的赋值运算符
2015/05/13 Python
Python实现处理管道的方法
2015/06/04 Python
解决Python 遍历字典时删除元素报异常的问题
2016/09/11 Python
两个元祖T1=('a', 'b'),T2=('c', 'd')使用匿名函数将其转变成[{'a': 'c'},{'b': 'd'}]的几种方法
2019/03/05 Python
python实现图片转字符小工具
2019/04/30 Python
python+opencv3生成一个自定义纯色图教程
2020/02/19 Python
Python操作Elasticsearch处理timeout超时
2020/07/17 Python
大学生毕业的自我鉴定
2013/11/13 职场文书
初三化学教学反思
2014/01/23 职场文书
《骆驼和羊》教学反思
2014/02/27 职场文书
安全承诺书范文
2014/03/26 职场文书
慰问敬老院活动总结
2014/04/26 职场文书
甜品店创业计划书
2014/09/21 职场文书
2014年青年教师工作总结
2014/12/17 职场文书
2015年大学生工作总结
2015/04/21 职场文书
法律意见书范文
2015/05/20 职场文书
2015暑假假期总结
2015/07/13 职场文书
spring项目中切面及AOP的使用方法
2021/06/26 Java/Android
python微信智能AI机器人实现多种支付方式
2022/04/12 Python