用nginx作通过内置的uwsgi接口反向代理运行在uWSGI服务器上的Flask应用,是一种安全高效的架构。考虑到完全不管理TCP端口等资源,通过unix socket file连接nginx和uWSGI是一种理想的方案。但使用socket file必须注意处理nginx访问.sock文件权限的问题。主要就是在uWSGI的应用配置中使用--chown-socket=nginx:nginx
和--chmod-socket=666
来定义.sock文件的所有权和访问属性,同时要注意.sock文件的位置最好放在/tmp
或者/usr/local/share
这一类nginx可以访问的目录。
本例子将应用部署在nginx的/hello
二级目录下,两个应用分别通过http://URL/hello
和http://URL/hello/a2
访问。以下首先是hello.py
程序文件:
from flask import Flask
app = Flask(__name__)
@app.route('/')