在訪問網站過程當中,可能會出現404錯誤和500錯誤,分別是找不到請求的資源錯誤和WEB端服務器程序錯誤,它們通常是不可避免的。 一旦產生了這種錯誤,不少都是經過web server 來處理。好比使用 apache 的定義 或者nginx 的定義,均可以實現定向處理。但Django提供了相應的處理方式,因此單純在Django裏面就能夠實現404錯誤或者500錯誤的定向處理,並且這種處理方式不管是部署在apache下仍是nginx下,都是生效的html
下面是詳細配置過程: python
1.urls的配置,出現這種錯誤時,就執行那個方法nginx
from . import views handler404 = views.page_not_found handler500 = page_error
2.具體方法的編寫web
from django.shortcuts import render def page_not_found(request): return render(request, '404.html') def page_error(request): return render(request, '500.html')
看到這裏,應該很熟悉了,定向到了本身定義的模板中。如上面的例子,分別有 404.html ,500.html 本身定義的頁面在處理,就能夠把這些頁面作得更人性化apache
3.還有,須要將 settings.py中的debug設置爲Fasle。這樣,若是出現錯誤,就會出現本身定義的頁面,而不會出現 django 自帶的出錯頁面django