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

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

    location /project1 {
            include uwsgi_params;
            uwsgi_pass localhost:3032;
    }

工作正常,该项目位于myurl.com/project1上。
但是django将myurl.com作为项目根目录。

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

Django regex规则“^ $”应适用于每个项目,例如:

在Project1中:^ $-> / project1

在Project2中:^ $-> / project2等。

有没有办法让Nginx正常工作?

干杯,

最佳答案

nginx不会自动将SCRIPT_NAME设置为Cherokee。

您可以用

uwsgi_param SCRIPT_NAME / project1;

然后您需要重写PATH_INFO,uWSGI可以根据您的设置自动执行此操作

uwsgi_modifier1 30

因此,完整的nginx配置:

 location /project1 {

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

另一种方法是在uWSGI中完成整个工作,将--manage-script-name作为选项,并保持nginx配置不变。

关于django - Nginx:具有项目根的多个Django项目?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8616181/

10-12 18:20