在app.yaml文件中混合静态和动态端点

时间:2011-01-22 19:53:15

标签: google-app-engine yaml

我正在尝试在我的App Engine应用程序中描述端点,并且对于混合静态和动态内容的目录结构很困难。但我的yaml规则相互冲突。在我更改目录结构之前,是否有人有推荐?

目标是创建一个包含文档(静态html文件)和实现的目录。

/api
  - /v1
    - getitdone.py
  - doc.html
  - index.html

我认为我应该用我的应用程序做什么...

- url: /api/v1/getitdone
  script: api/v1/getitdone.py

- url: /api/
  static_files: api/index.html
  upload: api/index.html  

- url: /api
  static_dir: api

但是这会导致动态端点失败。我假设static_dir引用正在打破它。如何在不描述每个脚本和静态文件引用的情况下执行此操作(此处列出的内容多于此处)?

1 个答案:

答案 0 :(得分:1)

原因是您将/api/标记为静态目录,因此您的脚本将作为静态文件上载,这使得App Engine运行时无法访问它们。

最简单的解决方案是将动态代码和静态资源放在应用程序目录的不同部分中,并使用app.yaml将它们映射到所需的URL结构。