Nginx:具有项目根的多个Django项目?

Nginx:具有项目根的多个Django项目?,django,nginx,uwsgi,Django,Nginx,Uwsgi,通常我用切诺基。由于最新chrome版本存在一些关键问题,我不得不暂时将我的生产服务器改为nginx 目前正试图让我的配置像切诺基那样工作。 我正在使用一个非常简单的uwsgi处理程序: location /project1 { include uwsgi_params; uwsgi_pass localhost:3032; } 工作正常,该项目可在myurl.com/project1上获得。 但django将myurl.com作

通常我用切诺基。由于最新chrome版本存在一些关键问题,我不得不暂时将我的生产服务器改为nginx

目前正试图让我的配置像切诺基那样工作。 我正在使用一个非常简单的uwsgi处理程序:

    location /project1 {
            include uwsgi_params;
            uwsgi_pass localhost:3032;
    }
工作正常,该项目可在myurl.com/project1上获得。 但django将myurl.com作为项目根

我希望它如何工作的示例: 一个子域上有多个项目:project1 on/project1、project2 on/project2等

Django正则表达式规则“^$”应适用于每个项目,如:

在项目1中:^$->/Project1

在项目2中:^$->/Project2等

有没有办法在nginx中实现这一点


干杯,

nginx不会自动将脚本名称设置为Cherokee

你可以用武力强迫它

uwsgi_参数脚本_名称/项目1

然后您需要重写路径信息,uWSGI可以为您自动完成此设置

uwsgi_修改器130

所以完整的nginx配置:

 location /project1 {

        include uwsgi_params;
        uwsgi_param SCRIPT_NAME /project1;
        uwsgi_modifier1 30;
        uwsgi_pass localhost:3032;
}

另一种方法是在uWSGI中完成整个工作,将脚本名称作为选项进行管理,并保持nginx配置不变。

在一个子域上有多个项目:project1在/project1上,project2在/project2上,等等。
:这些不是子域,而是子文件夹。完全不同。如果您创建虚拟主机和真实子域,那么一切都会变得更容易:apps.myydomain.com/project1、apps.mydomain.com/project2=一个子域上的多个项目