python的Flask构建一个网站 (python的Flask详细教程)

一、基础的错误页面的定制方式:

#定制错误页面 @app.errorhandler(404) def page_not_found(e): return '你的地址错误'

二、美化错误页面,给出渲染的页面:

main.py

#定制错误页面 @app.errorhandler(404) def page_not_found(e): return render_template('error-404.html')

error-404.html

注:class="img-fluid" 是bootstrap的图片自适应大小定义

{%extends 'base.html'%} {%block content%} <img src="/img/404.png" class="img-fluid"/> {%endblock%} {#以下加入一个脚本,在出错2s时间后自动跳转到首页#} <script> setTimeout(function(){ location.href ='/' },2000) </script>

三、错误注释:

下面列出了一些用户经常遇到的错误代码,即使在这个应用准确无误的情况下也可能发生:

404 Not Found 经典的“哎呦,您输入的 URL 当中有错误”消息。这个消息太常见了,即使是 互联网的新手也知道 404 代号的意义: 该死,我寻找的东西不在那儿。确保 404 页面上有一些有用的信息是一个好主意,至少应该提供一个返回主页的链接。

403 Forbidden 如果您的网站包含一些类型的访问控制,您必须向非法的请求返回 403 错误代号。 所以请确保用户不会在试图访问了一个禁止访问的资源后不知所措。

410 Gone 您知道 404 Not Found 代号还有一个兄弟名为 410 Gone 么? 很少有人真正实现 它,您可以考虑将其返回给对以前曾经存在、但是现在已经删除的资源的请求,而 不是直接返回 404 。 如果您还没有从数据库里永久删除这个文档,仅仅是将他们 标记为删除。那么可以为用户展示一个消息,说明他们寻找的东西已经永远删除了。

500 Internal Server Error 通常在出现编程错误或者服务器过载的时候会返回这个错误代号。在这里放一个 漂亮的页面是一个非常好的主意。因为您的应用 总有一天 会出现错误(请参考 记录应用错误 )