从NginX中的代理通过语句中删除尾部斜杠

时间:2019-09-17 05:16:20

标签: nginx nginx-reverse-proxy

尝试将/ url重定向到托管在其他位置接受内联参数的SPA后端,这会产生一些问题,因为代理传递传递了斜杠并破坏了IE:

http://hostname/target?variable=1&page=1转换为http://hostname/target/?variable=1&page=1

Ngnix配置块如下所示:

    location ^~ /target/ {
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Scheme $scheme;
        proxy_pass $remote_host/target/;
    }

我已经尝试过:

  • 删除尾部斜杠(重定向循环)
  • 添加proxy_redirect $remote_host/target/$ $remote_host/target/$1;
  • 重写rewrite ^/(.*)/$ /$1 permanent;

全部无济于事。

1 个答案:

答案 0 :(得分:0)

原来的答案被证明是正确的,问题最终是后端应用程序上执行奇怪的重定向的错误