google appengine是Google 管理的数据中心中用于 WEB 应用程序的开发和托管的平台,目前支持的语言有Java、Python、PHP和Go等,相当于免费的云主机(不用花钱就可以部署自己的网站,网站的域名是一个谷歌提供的二级域名),类似的目前国内有新浪的SAE,腾讯也有一个,阿里也有一个,百度也有一个。
在开发之前,你得安装google app engine,下载地址 https://cloud.google.com/appengine/downloads,选择for python的SDK。
然后按照上面的说明解压,安装。
由于flask是第三方库,所以我们需要把flask库文件放在我们开发的应用里,然后上传上去。
官方给的一个flask例子:https://console.developers.google.com/start/appengine,选择python那个,可以把这个demo下载下来,里面的lib就是我们需要的库文件,把lib目录放在我们新建的应用目录下面。
比如我们新建工程
mkdir hello 然后把lib拷贝到hello目录下
cd hello
vi hello.py
from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello World!' @app.route('/user/<name>') def user(name): return '<h1>hello, %s!<h1>' %name if __name__ == '__main__': app.run()
@app.route('/user/<name>')这样访问http://www.example.com/user/steven,会看到hello,steven!。
vi app.yaml (GAE的配置文件)
version: 1 runtime: python27 api_version: 1 threadsafe: true handlers: - url: .* script: hello.app libraries: - name: jinja2 version: latest - name: markupsafe version: latest
import sys import os.path sys.path.insert(0, os.path.join(os.path.dirname(__file__), 'lib'))
然后上传:
appcfg.py --oauth2 -A flask-10010 update ../hello/
上传成功后,访问http://flask-10010.appspot.com/就可以看到Hello, World!