Nginx+uWSGI安装与配置

nginx中uwsgi的使用和php-fpm的使用很相似。

1、安装配置nginx和Pyhton运行环境
Nginx的安装与配置:
Python的安装与升级:

2、编译uWSGI

uWSGI下载地址:

tar xzvf uwsgi-1.2.tar.gz cd uwsgi-1.2 make -j 8 #或者使用python编译 python uwsgiconfig.py --build #复制生成的可执行文件uwsgi到/usr/sbin/目录下 cp uwsgi /usr/sbin/

3、测试uwsgi是否可用
测试脚本test.py

#!/usr/bin/python def application(env,start_response): start_response('200 OK',[('Content_Type','text/html')]) return "Congraduation!!! uWSGI Testing OK!!! #启动web server uwsgi --http  :9090 --wsgi-file test.py

浏览器输入IP:端口:192.168.1.99:9090
可以看到”Congraduation!!! uWSGI Testing OK!!!”

4、nginx中配置uWSGI
我的nginx的每个Web应用的配置文件在nginx安装目录下面的sites-enabled下面
配置文件如下:

server { listen 80; server_name 192.168.1.10; root /usr/local/sylar/extension; location / { include uwsgi_params; uwsgi_pass 127.0.0.1:9090; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }

#配置好了记得重启nginx

/usr/local/nginx/sbin/nginx -t killall /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx

4、Web应用的uWSGI配置xml文件
在上面的设定的Web根目录/usr/local/sylar/extension下面创建extension.xml(extension是应用的名称)
输入一下内容:

<uwsgi> <socket>:9090</socket> <chdir>/usr/local/wochacha/extension</chdir> <wsgi-file>test.py</wsgi-file> <module>extension</module> <processes>4</processes> </uwsgi>

5、建立测试应用
把上面的第3步骤的test.py复制到Web应用的根目录/usr/local/wochacha/extension下面

6、启动uwsgi服务进程
uwsgi -x /usr/local/wochacha/extension/extension.xml

7、访问Python应用

浏览器里面输入IP或者ServerName,除非上面设置listen端口不是http默认的80端口
上面的9090端口不能出现在URL里面,因为他是uwsgi的服务端口。注意这里的
否则你不能访问Web应用数据,且uwsgi进程提示”invalid request block size: 21573 (max 4096)…skip”

更多参考

Nginx+uWSGI+Supervisor在Ubuntu上部署Flask应用 

uWSGI+Django+Nginx的工作原理流程与部署过程

快速部署Python应用:Nginx+uWSGI配置详解 

Nginx+uWSGI+Django+Python 应用架构部署 

Ubuntu Server 14.04.2 LTS 配置 Nginx + Uwsgi + Django 

Flask+uWSGI+Nginx+Ubuntu部署教程

Ubuntu 16.04下安装部署 Nginx+uWSGI+Django1.9.7 

Nginx+uWSGI+Django在Ubuntu下的部署 

Linux 上利用Nginx代理uWSGI处理Flask Web应用 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/6cda41cd693dfa4287d795b252daabd0.html