【发布时间】:2018-05-28 11:14:22
【问题描述】:
当我加载一个不存在的 url 时,页面 404 不显示,而是显示页面 500。在我的设置下方。 您能否指导我打开 Django 以显示 404 页面?谢谢
Ubuntu 服务器 16.04 ;蟒蛇3.5.2; Django 2.0
cat contatoproj/urls.py
from django.contrib import admin
from django.urls import path
from django.conf.urls import url
from django.conf.urls import include
from django.conf.urls import handler404, handler500
from contatoapp import views
from contatoapp import views as myapp_views
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^$', views.index, name='index'),
url(r'^contato', views.contato, name='contato'),
]
handler404 = myapp_views.error_404
handler500 = myapp_views.error_500
cat contatoapp/views.py
from django.shortcuts import render
from django.http import HttpResponse
from django.template import RequestContext
from django.contrib import messages
from django.core.mail import send_mail, BadHeaderError
from django.http import HttpResponse, HttpResponseRedirect
from django.conf import settings
from contatoapp.forms import ContatoForm
def error_404(request):
data = {}
return render(request, 'ops404.html', data)
def error_500(request):
data = {}
return render(request, 'ops500.html', data)
$ ls -la 模板/操作*
-rwxr-xr-x 1 admweb admweb 614 Dec 13 15:31 templates/ops404.html
-rwxr-xr-x 1 admweb admweb 614 Dec 13 15:29 templates/ops500.html
cat contatoproj/settings.py
DEBUG = False
ALLOWED_HOSTS = ['*']
【问题讨论】: