方案一
uWSGI config:
[uwsgi]
# Requires PCRE support compiled into uWSGI
route-run = fixpathinfo:
Nginx config:
server {
location /subpath/static {
alias /srv/subpath/static;
}
location /subpath {
uwsgi_pass unix://var/run/uwsgi.socket;
uwsgi_param SCRIPT_NAME /subpath; # Pass the URL prefix to uWSGI so the "fixpathinfo:" route-rule can strip it out
include uwsgi_params;
}
}
方案二
在 settings.py 里,增加以下参数:
FORCE_SCRIPT_NAME = '/subpath'
Reference Link
- https://www.mrdoc.fun/project-7/doc-357/
- https://stackoverflow.com/questions/11292217/run-django-app-via-nginxuwsgi-in-a-subpath
- https://stackoverflow.com/questions/48893554/nginx-serving-django-in-subdirectory-admin-login-is-redirecting
- https://stackoverflow.com/questions/28147916/how-to-host-a-django-project-in-a-subpath