uWSGI vhost问题

Jas*_*sta 6 python wsgi nginx uwsgi

uWSGI配置

[uwsgi]
socket = /tmp/uwsgi.sock
chmod-socket = 666
processes = 1
master = true
vhost = true
no-site = true
Run Code Online (Sandbox Code Playgroud)

Nginx配置

server {
    listen       80;
    server_name  www.site1.com;

    location / {
        include uwsgi_params;
        uwsgi_pass unix:/tmp/uwsgi.sock;
        uwsgi_param UWSGI_PYHOME /var/virtualenvs/site1;
        uwsgi_param UWSGI_CHDIR /var/www/site1;
        uwsgi_param UWSGI_SCRIPT wsgi;
    }
}

server {
    listen       80;
    server_name  www.site2.com;

    location / {
        include uwsgi_params;
        uwsgi_pass unix:/tmp/uwsgi.sock;
        uwsgi_param UWSGI_PYHOME /var/virtualenvs/site2;
        uwsgi_param UWSGI_CHDIR /var/www/site2;
        uwsgi_param UWSGI_SCRIPT wsgi;
    }
}
Run Code Online (Sandbox Code Playgroud)

无论我首先点击的是哪个站点都是显示的,所以如果我首先转到site2,我将无法看到site1.关于为什么uWSGI vhost设置似乎不起作用的任何想法?

Jas*_*sta 5

结果是使用INI配置文件导致uWSGI以单一解释器模式运行.XML中完全相同的配置允许一切正常工作.uWSGI开发人员在未来版本中不会出现这种情况.