Google App Engine的app.yaml详细说明
Google AppEngine使用一个app.yaml作为其重要的全局的配置文件。
每个独立的Google AppEngine的应用,都必须声明这样一个文件。
app.yaml使用YAML作为格式。熟悉Ruby的人应该非常熟悉yaml这种格式。
必添内容
在一个app.yaml中,必须要声明如下字段:
application
application用来唯一标示一个Google AppEngine的应用。
在开发环境中(使用dev_appserver.py),这个字段必添,但其值随意。
但是在部署环境中(应用上载至Google AppEngin的host后),
这个值必须与你申请的Google AppEngine的那个application_id一致。
application: myapp
version
version用来标示这一个Google AppEngine应用的版本。同样,在开发环境中,这个值可以随意。
runtime 和 api_version
runtime 和 api_version标示应用将依赖于那种运行环境(runtime)的哪个版本(api_version)。
当前由于只支持python,因此这两个值是固定的。
runtime: python
api_version: 1
handlers
handlers用来定义一系列url handlers,(类似于URL Mapping,如果你熟悉Spring MVC的话)。
需要为每一个handler指派一个url pattern(可以使用正则表达式)。
一旦请求的URL满足这个pattern的时候,AppEngine便会将这个请求交由这个handler所制定的对象来处理。
当需要处理动态内容时,使用script字段。script定义了用来处理这个请求的python文件路径。
handlers:
- url: /.*
script: main.py
- url: /book/.*
script: book.py
Google AppEngine在匹配url pattern的时候,使用first-match优先原则。因此上面的配置中,book.py永远也不会被使用。
当然还可以使用handler处理静态内容,如javascript脚本,或是css文件等。
-url: /static
static_dir: path/to/static
static_dir标明了静态文件所在的目录。 因此如/static/main.js的请求,Google AppEngine会到/path/to/static/main.js处寻找。
- url: /flex
static_dir: /flex
以上是初学者常会犯的错误。正确的应该是
- url: /flex
static_dir: flex
建议继续学习:
- App的成本 (阅读:6357)
- 移动APP开发过程 (阅读:4232)
- IOS APP设计流程 (阅读:3608)
- Web app设计浅谈 (阅读:2950)
- 让APP简约而不简单 (阅读:2463)
- 聊聊 App Store 的产品和运营攻略 (阅读:2342)
- 设计案例探讨――iPhone计算器APP (阅读:2096)
- 移动互联网时代谁主沉浮 (阅读:2055)
- 手机Web app应用研究 (阅读:2057)
- 序列化格式YAML初探 (阅读:2052)
扫一扫订阅我的微信号:IT技术博客大学习
- 作者:kimi 来源: 平凡的世界
- 标签: app AppEngine yaml
- 发布时间:2010-11-17 19:12:10
- [682] Go Reflect 性能
- [26] 正态分布的前世今生(一)
- [17] rsync同步的艺术
- [16] Linux Used内存到底哪里去了?
- [14] 基于HTTP缓存轻松实现客户端应用的离线支持
- [14] Linux内存中的Cache真的能被回收么?
- [13] 我的git笔记
- [13] Cuckoo Filter:设计与实现
- [12] 在JavaScript中什么时候使用==是正
- [12] 关于RDS只读实例延迟分析