我对蟒蛇,nginx和烧瓶都很陌生,所以要理解我所描述的事物,并带着一丝盐味。
我正在查看一个烧瓶应用程序和nginx的设置。我理解它的方式,面向网络的nginx服务器,它背后是一个在uWSGI服务器上运行的烧瓶应用程序。
我看到为nginx配置的上游,服务器和位置。所以我知道哪条路由映射到了哪个内部端口。
我试图找到为flask app / uWSGI服务器配置端口的位置。在日志中我看到: uWSGI http绑定于:8080 fd 4 但是当用netstat检查时,我没有看到端口8080绑定
nginx和uWSGI服务器/烧瓶应用程序在哪个端口上传递请求?该端口配置在哪里?
谢谢!
答案 0 :(得分:2)
使用--socket
选项(或相关的配置文件值)配置要使用的端口或本地套接字。
[uwsgi]
master = true
processes = 8
threads = 2
socket = /home/sopython/uwsgi.sock
vacuum = true
chdir = /home/sopython
virtualenv = /home/sopython
module = sopy:create_app()
然后配置nginx以与您选择的端口或套接字进行通信。
server {
listen 80 default_server;
listen [::]:80 ipv6only=on default_server;
server_name sopython.com;
root /home/sopython;
location /static {
alias /home/sopython/lib/python3.4/site-packages/sopy/static;
}
location / {
include uwsgi_params;
uwsgi_param HTTP_HOST $server_name;
uwsgi_pass unix:///home/sopython/uwsgi.sock;
}
}
这取自Python chat room的网站配置。