-
准备:
1.web.py :强大且简单
2.nginx:简易使用说明
3.uwsgi:中文版说明
-
安装:
- web.py
pip install web.py
- nginx
[安装](http://www.jianshu.com/p/b8c5e9bd57f9)
[nginx配置教程](http://www.jianshu.com/p/b493dc895176)
- uwsgi:
pip install uwsgi
- # 配置:
`webapp.py`
import web
urls = (
'/', 'index'
)
app = web.application(urls, globals())
application = app.wsgifunc()
class index:
def GET(self):
return "Hello, world!"
if name == "main":
app.run()
` nginx` 新建server:
- nginx 默认路径:`/usr/local/etc/nginx`
- 修改`nginx.conf`
别的地方不用动,只要修改http模块就行
http {
include app/*; # 添加这一行
include mime.types;
default_type application/octet-stream;
- 设置server 路径:`/usr/local/etc/nginx/app/`
- 新建文件:`at.test.cc.conf` 配置如下
server {
listen 80;
server_name at.test.cc;# 自定义的域名,别忘了配置hosts ;
location /{
include uwsgi_params;
uwsgi_pass 127.0.0.1:9090;
# UWSGI_CHDIR 后面跟的是.py 文件在你本地的绝对路径
uwsgi_param UWSGI_CHDIR /Users/xcma/code/god_wph/Src/Webapp;
uwsgi_param UWSGI_SCRIPT webapp; # webapp为你要执行的.py 文件
}
location /static {
alias /home/notice/web/static;
autoindex on;
}
}
`uwsgi`注意
如果使用uwsgi做代理 ,那么在代码中必须添加下面的一行,另外这行代码一定不要放在
`if __name__ == "__main__": app.run()`后面:
application = app.wsgifunc()
uWSGI启动参数:
uwsgi --socket 127.0.0.1:9090 \ # 监听在指定端口
--wsgi-file hello.py \ # 部署的web应用
--master --processes 2 \ # 创建两个worker进程处理请求
--daemonize /var/log/uwsgi.log \ # 后台运行uWSGI,并把日志输出到指定文件
--pidfile /var/log/uwsgi.pid # pid文件
- # 启动
- 启动uwsgi:
uwsgi -s 127.0.0.1:9090 -w webapp # webapp为要执行的.py文件/或者绝对路径
uwsgi -s 127.0.0.1:9090 -w webapp --daemonize /var/log/uwsgi.log # 这样就在后台执行了
! 注意点:这里指定的ip/port 要跟nginx中的一致
- 启动nginx:
sudo nginx -c /usr/local/etc/nginx/nginx.conf
/usr/local/bin/nginx # 启动
或者
sudo nginx
/usr/local/bin/nginx -s reload #平滑重启
或者
sudo nginx -s reload
/usr/local/etc/nginx/nginx.conf #配置文件。
- # 访问
浏览器输入:` at.test.cc`即可访问到目标文件了,搭建成功!
@ 雾霾-2016-11-26 18:34:18