使用nginx,我可以在代理uwsgi/Django服务器时删除父路径吗?
我的目标是将其发送到nginx服务器:使用nginx,我可以在代理uwsgi/Django服务器时删除父路径吗?,nginx,Nginx,我的目标是将其发送到nginx服务器: http://www.example.com/secure/rest/rabbits/list?foo=baloo nginx服务器要将此代理反向到django服务器: /rabbits/list?foo=baloo 经过几个小时的摆弄,我找不到办法来实现这一点 以下是我的nginx配置中的相关行: upstream django { server 127.0.0.1:8000; # for a web port socket (we'll u
http://www.example.com/secure/rest/rabbits/list?foo=baloo
nginx服务器要将此代理反向到django服务器:
/rabbits/list?foo=baloo
经过几个小时的摆弄,我找不到办法来实现这一点
以下是我的nginx配置中的相关行:
upstream django {
server 127.0.0.1:8000; # for a web port socket (we'll use this first)
}
location /secure/rest/ {
uwsgi_pass django;
include /etc/nginx/uwsgi_params; # the uwsgi_params file you installed
}
Django日志中的结果是:
Oct 19 09:47:10 ip-172-26-15-20 uwsgi[51176]: Not Found: /secure/rest/user
有人能建议一种方法来实现这一点吗?我尝试了太多的解决方案,以至于我忘记了我尝试过的解决方案的排列。检查答案。这是关于ngx_http_fastcgi_模块的类似问题,但我认为原因和解决方案是相同的。在使用uwsgi参数请求URI…
指令包含uwsgi参数后,需要手动覆盖REQUEST\u URI
uwsgi参数。试试这个:
位置/安全/休息/{
重写^/secure/rest(.*)$$1中断;
包括/etc/nginx/uwsgi_params;#您安装的uwsgi_params文件
uwsgi_参数请求_URI$URI$is_args$args;
uwsgi_pass django;
}