1

我正在尝试使用 Google App Engine 的 app.yaml 在请求时自动提供 *.html 文件。所以我的文件结构中有以下内容:

-myapp
    -html (folder)
        -index.html
    -index.py

在我的 app.yaml 我有:

handlers:
-url: /*\.html
static_dir: html

-url: /.*
script: index.app

但是,当我在浏览器 localhost:8080/index.html 上运行它时,我得到一个 404 Not Found。为什么它不路由到我的 index.html 文件?

4

1 回答 1

2

根据您的确切需求,您可以通过多种方式执行此类操作。如果您想要的只是静态内容而没有任何更高级的功能,则可以使用添加的正则表达式,例如 @hyperslug。

您可以像这样设置网址:

- url: /
  static_files: static/html/index.html
  upload: static/html/index.html
  secure: never

如果这是您想要的,它允许您在单个文件的基础上设置页面安全性。或者您可以将正则表达式与安全性结合起来,例如:

- url: /(.*\.(gif|png|jpg))
  static_files: \1
  upload: (.*\.(gif|png|jpg))
  secure: always

请记住,如果您与公共搜索引擎共享页面,则将 http/https 视为 2 个不同的链接。以及有无尾随 /。

于 2012-06-11T04:31:37.493 回答