Django:404.html存在,但使用了500.html
Django:404.html存在,但使用了500.html,django,django-templates,Django,Django Templates,http://127.0.0.1:8000/app/slug/ 使用Debug=TrueI获取未找到页面(404)-未找到与查询匹配的条目。使用Debug=False我看到的是projectName/templates/500.html而不是404.html 两者看起来一模一样500.html: {% extends "base.html" %} {% block title %}server error{% endblock %} {% block content %} <h3&g
http://127.0.0.1:8000/app/slug/
使用Debug=True
I获取未找到页面(404)-未找到与查询匹配的条目
。使用Debug=False
我看到的是projectName/templates/500.html
而不是404.html
两者看起来一模一样<代码>500.html:
{% extends "base.html" %}
{% block title %}server error{% endblock %}
{% block content %}
<h3>Error 500: server error</h3>
{% endblock %}
{% extends "base.html" %}
{% block title %}page not found{% endblock %}
{% block content %}
<h3>Error 404: page not found</h3>
{% endblock %}
为什么Django加载的是500而不是404,尽管它存在?这不可能是模板错误。如果您100%确定已在设置中正确设置了允许的\u主机,则404.html模板可能不正确。可能存在语法错误(或者找不到基本模板),这会导致引发新的500异常
尝试通过只包含静态html来简化404.html。您的django版本是什么?如果您使用django 1.5且Debug=False,则必须在
设置中添加允许的\u主机
更多详细信息:是的,我使用的是django 1.5。我尝试了ALLOWED_HOSTS=['http://127.0.0.1:8000/“,”localhost']
但在本地尝试时仍然会出现500错误。我已经解决了。这一个有效:ALLOWED_HOSTS=['localhost','127.0.0.1']