Nginx 代理转发并保留原始链接?

Nginx 代理转发并保留原始链接?

以下是我的当前配置:

server {
    location ~ ^/bugsbunny/?(.*)$ {
        proxy_set_header Host $host;
        proxy_pass       http://127.0.0.2:8080/cartoon/network/$1;
    }
}

我一直在尝试弄清楚如何反向代理请求并保留原始主机。例如,假设我有http://127.0.0.1/bugsbunny作为前端,并且我想将请求反向代理到http://127.0.0.2:8080/cartoon/network。如何保留原始 URL 以便http://127.0.0.2:8080/cartoon/network/something/other将其变为http://127.0.0.1/bugsbunny/something/other前端?

PS 我尝试使用proxy_set_header Host $host;但这只保留了原始主机。

答案1

其实是我自己发现的。你必须自己通过以下方式重写链接HttpSubModule。请确保设置sub_filter_once off以便它替换页面上的所有链接,而不仅仅是它找到的第一个链接。

相关内容