nginx - 重写尾部斜杠优化

时间:2021-06-28 16:04:58

标签: docker nginx url-rewriting nginx-reverse-proxy

我正在尝试使用 nginx 代理配置 docker compose 设置以将请求路由到单独的容器。它按预期工作,但我在出现多个斜线时遇到了一些困难。

如果用户登陆 example.com/handle 一切正常,结果路径是 /

如果用户登陆 example.com/handle/ 一切都不好,因为结果路径是 //

目前我有以下内容

location /handle {
    rewrite ^/handle(.*|$) /$1 break;
    proxy_pass          http://container:8000;
    proxy_redirect      off;
    proxy_set_header    Host $host;
    proxy_set_header    X-Real-IP $remote_addr;
    proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header    X-Forwarded-Host $server_name;
}

1 个答案:

答案 0 :(得分:0)

当然,我一发布问题就想通了。这按预期工作

location /handle {
    rewrite ^/handle/(.*) /$1 break;
    proxy_pass          http://container:8000/;
    proxy_redirect      off;
    proxy_set_header    Host $host;
    proxy_set_header    X-Real-IP $remote_addr;
    proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header    X-Forwarded-Host $server_name;
}