As stated in http://uwsgi-docs.readthedocs.io/en/latest/Nginx.html:
"
Unfortunately nginx is not able to rewrite PATH_INFO accordingly to
SCRIPT_NAME. For such reason you need to instruct uWSGI to map specific
apps in the so called “mountpoint” and rewrite SCRIPT_NAME and PATH_INFO
automatically
[...]
ancient uWSGI versions used to support the so called “uwsgi_modifier1 30”
approach. Do not do it. it is a really ugly hack
"
Replacing the uwsgi_modifier1 hack by a mount point seems to work.
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
location / {
include uwsgi_params;
uwsgi_pass unix:/run/uwsgi/patchwork.sock;
- uwsgi_modifier1 30;
}
}
}
base = /opt
user = www-data
group = www-data
+url = /
chdir = %(base)/%(project)
pythonpath = %(base)/%(project)
module = %(project).wsgi:application
+# rewrite PATH_INFO and SCRIPT_NAME according to mount-points (for nginx)
+manage-script-name = true
+mount = %(url)=%(module)
+
master = true
processes = 5
# increase buffer size to avoid "502 bad gateway error"