Nginx:多个Django项目与项目根?

通常我使用的是切诺基。 由于最新的chrome发行版的一些关键问题,我不得不暂时将我的高效服务器更改为nginx

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

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

工作正常,该项目可在myurl.com/project1上find。 但是django把myurl.com当作项目的根源。

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

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

在Project1中:^ $ – > / project1

在Project2中:^ $ – > / project2等

有没有办法让这个在Nginx的工作?

干杯,

nginx不会自动将SCRIPT_NAME设置为切诺基。

你可以强制它

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配置不变。