在我的瓶的应用程序,我设置了一个404处理器是这样的:我没有正确设置我的Flask 404处理程序?
@app.errorhandler(404)
def page_not_found(e):
return render_template('404.html'), 404
但是,当用户进入一个网址无法识别,系统会给出一个内部服务器错误,而不是渲染我的404的模板。我错过了什么吗?
在我的瓶的应用程序,我设置了一个404处理器是这样的:我没有正确设置我的Flask 404处理程序?
@app.errorhandler(404)
def page_not_found(e):
return render_template('404.html'), 404
但是,当用户进入一个网址无法识别,系统会给出一个内部服务器错误,而不是渲染我的404的模板。我错过了什么吗?
内部服务器错误是HTTP错误500而不是404,并且您没有为其添加错误处理程序。当服务器无法正确完成客户端请求时会发生这种情况。要添加时发生这样的错误消息亲切,你可以添加一个的ErrorHandler像404
@app.errorhandler(500)
def exception_handler(e):
return render_template('500.html'), 500
此,如果您有调试设置为true,也会发生。尝试将debug设置为false,然后查看自定义404是否显示。
您是否创建了模板'404.html'?无论哪种方式,发布您的错误的堆栈跟踪。启用调试模式或记录您的应用程序,或者如果您使用的是内置开发服务器,请检查控制台。 – 2012-02-09 20:19:56
我的错误页面没有工作,直到我返回一个字符串,如'错误404'。然后,我编写'render_template'并且工作正常。我不知道让它工作的原因,但你可以尝试。 – jaloplo 2012-09-12 09:56:58