我们正在从 nginx 迁移到 HAProxy,我的一个重定向需要将某个 URL 指向外部服务器,但我们还需要在地址栏中保留该原始 URL。我尝试过使用 http-request 和 https-response 做很多事情,但最终总是在浏览器中显示外部站点。
下面的配置在 nginx 中工作以实现所需的行为。有人能帮我在 HAProxy 中使用后端来模拟这个结果吗?
proxy_pass https://<site>/;
sub_filter_once off;
sub_filter '<external_site>' '<my_site>';
sub_filter_types text/html application/json application/xhtml+xml application/xml application/x-javascript;
proxy_set_header Host <external_site>;
proxy_set_header Accept "";
proxy_set_header Accept-Encoding "";
proxy_redirect <external_site> <my_site>;
proxy_intercept_errors on;
}```
答案1
HAProxy 不提供任何更改 HTTP 响应主体的功能。它实际上也不是 Web 服务器,而是一个负载均衡器。如果您需要此功能,则应继续使用 nginx。