HAProxy 1.5 URL / URI重定向到其他域

时间:2019-05-07 00:16:35

标签: redirect url-rewriting centos haproxy

我正在寻找一种在HAProxy中将访问者从https://site1.co.uk重定向到https://site2.co.uk的方法。我还需要将子页面(即https://site1.co.uk/page1)重定向到site2.co.uk上的相似页面,但要使用特定的URL。如果有帮助,我在下面列出了我想要实现的目标...

首页重定向: https://site1.co.uk-> https://site2.co.uk

子重定向: https://site1.co.uk/first-page.html-> https://site2.co.uk/about-us.html

我一直在寻找有关此问题的简单解决方案的最后一天,但一直找不到能解决问题的方法。

我正在使用HAProxy 1.5(特定项目需要版本),任何帮助将不胜感激!

更新

由于帐户限制,我尝试过的操作...不得不删除HTTPS www.。

redirect prefix site2.org.uk/subpage2/endresult2.html if { hdr(host) -i site1.org.uk }

redirect prefix site2.org.uk/subpage2/endresult2.html if { hdr(host) -i site1.org.uk/site1page.html }

第1行:正确重定向。

第2行:最终结果是site2.org.uk/subpage2/endresult2/site1page.html-这是不正确的,并且最后不应该包含site1page.html页面。

最终结果应该是site2.org.uk/subpage2/endresult2-这就是我希望它出现的方式。

HAProxy所在的服务器还为具有不同URL的多个站点提供服务。上面的代码也正在重定向它们,但它不应该交互。如何防止这种情况发生?

更新2

我注意到,启用重定向后,它会影响其他通过HAProxy路由的站点,而不仅是我尝试重定向的站点(即site1)

2 个答案:

答案 0 :(得分:0)

如果您需要重定向URL,可以检查以下链接:

How to redirect URL with HAProxy

在haproxy中,您应该使用上述配置

答案 1 :(得分:0)

尽管从技术上讲不是我想要的答案...我意识到我可以使用httpd配置文件而不是HAProxy进行重定向。最后,对于像我这样的新手来说,这是最简单的选择。时间会证明这是否执行得很好...