使用nginx

时间:2017-07-22 10:44:27

标签: python django nginx uwsgi

我在linux机器上运行了一个django网站site1

它有以下配置:

site1_nginx.conf

upstream django {
 server unix:///var/www/site1/site1.sock;
}
server {
    listen      80;
    server_name    site.com;
    charset     utf-8;
    client_max_body_size 75M;  
    location /media  {
         alias /var/www/site1/media;
    }
    location /static {
        alias /var/www/site1/static; 
    }
     location / {
        uwsgi_pass  django;
        include     /var/www/site1/uwsgi_params;
    }
}

site1_uwsgi.ini

[uwsgi]
chdir           = /var/www/site1
module          = site1.wsgi
home            = /var/www/virtualenv/site1
master          = true
processes       = 10
socket          = /var/www/site1/site1.sock
chmod-socket    = 666
vacuum          = true

它有一个域site.com

我手头有另一个django网站site2。它与众不同,有着不同的艺术家。我无法将其作为应用或通过django路由添加到现有网站。我希望网站不相关,以便他们分别跟踪会话。

我希望其他网站site2可以通过地址www.site.com/site2或作为子域site2.site.com获取。

有可能吗?最好的方法是什么? 我检查了uwsgi emperor模式,但似乎我需要不同的域名。

编辑: 我尝试将第二个站点添加为子域。 我创建了以下配置:

#site2_nginx.conf

upstream django_site2 {
 server unix:///var/www/site2/site2.sock;
}
server {
    listen      80;
    server_name    site2.site.com;
    charset     utf-8;
    client_max_body_size 75M;  
    location /static {
        alias /var/www/site2/site2/static; 
    }
     location / {
        uwsgi_pass  django_site2;
        include     /var/www/site2/uwsgi_params;
    }
}


#site2_uwsgi.ini


[uwsgi]
chdir           = /var/www/site2/site2
module          = site2.wsgi
home            = /var/virtualenv/site2
master          = true
processes       = 10
socket          = /var/www/site2/site2.sock
chmod-socket    = 666
vacuum          = true

我在nginx配置中添加了一个符号链接到/etc/nginx/sites-enabled

site.com有效,但site2.site.com表示无法检索该页面,因此404。

0 个答案:

没有答案