python - 如何使用 app.yaml 为 Google Appengine Python 创建自定义错误页面

标签 python google-app-engine

对于用 Python 编写的 Google Appengine 项目,我希望在发生错误时有自己的错误消息。我想使用 error_handlers 中描述的: http://code.google.com/intl/nl/appengine/docs/python/config/appconfig.html#Custom_Error_Responses

在应用程序中,我将 webapp 与 debug = False 一起使用

当我在代码中创建错误时,我会从浏览器收到标准的 500 服务器错误 消息。

我创建了一个名为 default_error.html 的自定义错误页面

问题是:将这个自定义错误页面保存在哪里?

顺便说一句,这是我的 app.yaml 代码:

application: customerrorpage
version: 1
runtime: python
api_version: 1


error_handlers:
- file: default_error.html

handlers:
- url: /good.htm
  static_files: static/good.htm
  upload: static/good.htm

- url: /
  static_files: static/good.htm
  upload: static/good.htm

- url: /.*
  script: main.py

最佳答案

仅使用 python 部分定义自定义 404 对我有用:

app.error_handlers[404] = handle_404

def handle_404(request, response, exception):
    c = {'exception': exception.status}
    t = jinja2.get_jinja2(app=app).render_template('404.html', **c)
    response.write(t)
    response.set_status(exception.status_int)

这使您可以更好地控制错误消息和您可能想要显示的其他动态。

关于python - 如何使用 app.yaml 为 Google Appengine Python 创建自定义错误页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8964832/

相关文章:

python - Django:在 INSTALLED_APPS 中定位第四方应用程序的问题

python - 除了 EOF 之外,Python 的 read() 是否总是返回请求的大小?

Python 列表到元组

google-app-engine - Google App Engine 大文件上传

python appengine授权或授权

java - 在 Google App Engine 中刷新 WEB-INF/lib(使用 Eclipse)

python - 从 OLS 回归结果中读取 coef 值

python - Seaborn:如何将垂直线添加到分布图 (sns.distplot)

java - App Engine 应用程序性能测试

google-app-engine - (Google App Engine) Bulkloader 上传生成新条目而不是更新现有条目