Django 404、500頁面全局配置知識點詳解
django版本為2.2.7,全局配置404、500頁面,解決靜態(tài)文件路徑等問題
urls中編寫
urlpatterns = [ .............. ] handler404 = 'first.views.page_not_found' #handler404為固定寫法,first.views.page_not_found為404處理函數(shù)的位置 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
保存運行 在地址欄輸入一個不存在的頁面
會發(fā)現(xiàn)并沒有進(jìn)入我們的配置,這需要我們在settings中進(jìn)行配置
找到下發(fā)這個
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = []
修改為
DEBUG = False #關(guān)閉debug模式 這時為生產(chǎn)模式,在將項目部署到服務(wù)器時也需要關(guān)閉,debug模式會暴露站點的多種信息
ALLOWED_HOSTS = ['*'] # * 為所有都可訪問,部署服務(wù)器時需修改
保存后運行
進(jìn)入了配置,但按下F12發(fā)現(xiàn)所有的靜態(tài)文件如css、js、圖片等都沒找到,都是404
再進(jìn)入settings文件,因為我們開啟了生產(chǎn)模式所以Django不再代理靜態(tài)文件,可以通過配置來再次代理
找到我們曾經(jīng)寫的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文件 ]
保存后刷新頁面
所有的靜態(tài)文件就都加載了
到此這篇關(guān)于Django 404、500頁面全局配置知識點詳解的文章就介紹到這了,更多相關(guān)Django 404、500頁面全局配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實現(xiàn)的監(jiān)測服務(wù)器硬盤使用率腳本分享
這篇文章主要介紹了Python實現(xiàn)的監(jiān)測服務(wù)器硬盤使用率腳本分享,本文腳本適應(yīng)windows和linux系統(tǒng),需要的朋友可以參考下2014-11-11python中numpy包使用教程之?dāng)?shù)組和相關(guān)操作詳解
這篇文章主要給大家介紹了關(guān)于python中numpy包的使用教程,包含數(shù)組和相關(guān)操作等內(nèi)容,文中通過示例代碼介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來跟著小編一起學(xué)習(xí)學(xué)習(xí)吧。2017-07-07python皮爾遜相關(guān)性數(shù)據(jù)分析分析及實例代碼
這篇文章主要為大家介紹了python皮爾遜相關(guān)性分析及實例代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-02-02Python/Django后端使用PIL Image生成頭像縮略圖
這篇文章主要為大家詳細(xì)介紹了Python/Django后端使用PIL Image生成頭像縮略圖,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-04-04快速進(jìn)修Python指南之迭代器Iterator與生成器
這篇文章主要為大家介紹了Java開發(fā)者快速進(jìn)修Python指南之迭代器Iterator與生成器示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-12-12python中字符串String及其常見操作指南(方法、函數(shù))
String方法是用來處理代碼中的字符串的,它幾乎能搞定你所遇到的所有字符串格式,下面這篇文章主要給大家介紹了關(guān)于python中字符串String及其常見操作(方法、函數(shù))的相關(guān)資料,需要的朋友可以參考下2022-04-04關(guān)于Python中兩個不同shape的數(shù)組間運算規(guī)則
這篇文章主要介紹了關(guān)于Python中兩個不同shape的數(shù)組間運算規(guī)則,眾所周知,相同?shape?的兩個數(shù)組間運算是指兩個數(shù)組的對應(yīng)元素相加,我們經(jīng)常會碰到一些不同?shape?的數(shù)組間運算,需要的朋友可以參考下2023-08-08Python cookbook(數(shù)據(jù)結(jié)構(gòu)與算法)找到最大或最小的N個元素實現(xiàn)方法示例
這篇文章主要介紹了Python找到最大或最小的N個元素實現(xiàn)方法,涉及Python基于heapq模塊進(jìn)行集合運算的相關(guān)操作技巧,需要的朋友可以參考下2018-02-02