之前我们提到,通过nginx+uwsgi搭建uwsgi应用的教程,nginx提供了原生的uwsgi协议的支持,这是目前的黄金组合;但是有时候,我们需要Apache搭建这类应用,这时候就需要mod_proxy_uwsgi模块了,这也是目前官方推荐的Apache跑uwsgi的方式。

我们的环境为一台CentOS7服务器,IP:192.168.1.200,hostname:centos,

首先,我们需要安装epel仓库。

安装必要的组件:

以上两个组件会因为依赖,把httpd和uwsgi安装上去,所以就不用单独安装了。

把相关服务启动,并设置为自启动

我们以flask程序为例,进行测试,先安装flask。

创建文档目录:

在上面的目录中,创建一个flask程序test.py:

改下文件权限:

Apache启用模块:
vim /etc/httpd/conf.modules.d/00-uwsgi.conf

配置下uwsgi:
vim /etc/uwsgi.d/demo.ini

别忘记更改下用户属主:

创建下uwsgi日志文件:

最后创建下Apache正式的文档目录配置文件:
vim /etc/httpd/conf.d/uwsgi.conf

注意,后面的uwsgi://demo/是为了区分多个uwsgi用的,多个应用需要用不同的名称区分,仅仅采用不同的unix socket是无法工作的。另外,通过添加虚拟主机,可以采用不同的域名,或者通过不同的端口号来让多个uwsgi应用一起工作。

最后重启下服务:

访问http://192.168.1.200/ ,此时应该能工作了。

CentOS7下用Apache mod_proxy_uwsgi模块搭建uwsgi应用
Tagged on:             

发表评论

电子邮件地址不会被公开。 必填项已用*标注