安装
确保python 2.6/2.7已经安装:
python -v
安装easy_install
:
apt-get install python-setuptools
安装virtualenv
easy_install virtualenv
apt-get install python-virtualenv
创建一个工作目录,进入目录,创建:
$ mkdir myproject
$ cd myproject
$ virtualenv venv
New python executable in venv/bin/python
Installing distribute............done.
这样在venv目录内,会有一堆东西被创建出来:
root@h1:/home/linfeng/workspace_flask/venv# ls
bin include lib local pip-selfcheck.json
激活,在刚得myproject目录,执行下面的命令:
root@h1:/home/linfeng/workspace_flask# . venv/bin/activate
(venv) root@h1:/home/linfeng/workspace_flask#
在venv内,激活virtualenv中的flask:
(venv) root@h1:/home/linfeng/workspace_flask# pip install flask
全局安装
上面安装后,需要进入到venv环境,才能使用flask
可以通过root在非venv下,执行pip安装flask,这样可以任意使用,不过官方还是建议在venv下使用:
root@h1:/home/linfeng/workspace_flask/test# pip install flask
root@h1:/home/linfeng/workspace_flask/test# python hello.py
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
测试
在工作目录,编写hello.py
文件:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
if __name__ == '__main__':
app.run(host='0.0.0.0')
执行(要在venv里面执行):
(venv) root@h1:/home/linfeng/workspace_flask# python test/hello.py
通过浏览器访问http://ip:5000/
就可以打开网站
周边
WSGI
WSGI,全称 Web Server Gateway Interface,或者 Python Web Server Gateway Interface ,是为 Python 语言定义的 Web 服务器和 Web 应用程序或框架之间的一种简单而通用的接口。自从 WSGI 被开发出来以后,许多其它语言中也出现了类似接口。
WSGI 的官方定义是,the Python Web Server Gateway Interface。从名字就可以看出来,这东西是一个Gateway,也就是网关。网关的作用就是在协议之间进行转换。
很多框架都自带了 WSGI server ,比如 Flask,webpy,Django、CherryPy等等。当然性能都不好,自带的 web server 更多的是测试用途,发布时则使用生产环境的 WSGI server或者是联合 nginx 做 uwsgi 。
也就是说,WSGI就像是一座桥梁,一边连着web服务器,另一边连着用户的应用。但是呢,这个桥的功能很弱,有时候还需要别的桥来帮忙才能进行处理。WSGI 的作用如图所示:
参考:
http://flask.pocoo.org/
http://www.nowamagic.net/academy/detail/1330310