Google App Engine的app.yaml詳細說明

轉自http://www.ccvita.com/416.html

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章