访问静态目录中的丢失文件时,404页面不显示

时间:2016-02-27 02:22:31

标签: google-app-engine flask static-files

我正在努力将我的博客从GitHub页面移植到Google App Engine。我已将app.yaml设置如下。

runtime: python27
api_version: 1
version: 5
threadsafe: yes

handlers:

- url: /api/.*
  script: main.app

- url: /
  static_files: src/_site/index.html
  upload: src/_site/index.html

- url: /(.*)/
  static_files: src/_site/\1/index.html
  upload: src/_site/*.*

- url: /(.*)
  static_files: src/_site/\1
  upload: src/_site/(.*)

error_handlers:
- file: static/404.html

您可以转到http://joshuasnidercom.appspot.com/404.html直接访问我的404页面,然后您可以通过访问烧瓶应用程序处理的缺失页面来完成http://joshuasnidercom.appspot.com/api/invalidurl,但转到任何覆盖的页面像http://joshuasnidercom.appspot.com/nonexistentpage这样的静态文件只显示Error: Not Found The requested URL /nonexistentpage was not found on this server.错误。

我应该做些什么?

1 个答案:

答案 0 :(得分:0)

我相信你需要在视图文件中创建一个错误处理程序。 您可以使用以下代码执行此操作:

@app.errorhandler(404)
def page_not_found(e):
    return render_template("404.html"),404

您也可以用500,403等替换404,以解决其他错误。