成都网站建设设计

将想法与焦点和您一起共享

Django中404、500页面全局配置知识点的示例分析-创新互联

这篇文章主要介绍Django中404、500页面全局配置知识点的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

成都创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站建设、做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的逊克网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

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.*)$', serve, {'document_root': MEDIA_ROOT}), #media文件
  re_path(r'^static/(?P.*)$', serve, {'document_root': STATIC_ROOT}),#static文件
]

保存后刷新页面

Django中404、500页面全局配置知识点的示例分析

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

以上是“Django中404、500页面全局配置知识点的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联成都网站设计公司行业资讯频道!

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


本文名称:Django中404、500页面全局配置知识点的示例分析-创新互联
本文URL:http://chengdu.cdxwcx.cn/article/cspjgc.html