如何使用HAProxy重定向/重写URL(更改上下文路径)

时间:2016-05-23 23:36:30

标签: redirect haproxy

此问题与HAProxy 1.4.27有关。 我有一个可以使用上下文路径'/ foo / foobar?...访问的应用程序,如下所示:

http://www.myserver.com/foo/foobar 
or 
http://www.myserver.com/foo/foobar/showDetails.do?id=1002

最近,上下文路径已更改为“/ foobar”,但用户已将旧URL添加为书签。我试图使用haproxy.cfg中的“重定向”配置将用户重定向到新的上下文,但只有在url完全匹配时才有效。有没有办法配置haproxy.cfg重定向到

http://www.myserver.com/foobar 
or
http://www.myserver.com/foobar/showDetails.do?1002

这是我正在使用的重定向配置:

redirect location /foobar/ if { url /foo/foobar/}

我也尝试使用'reqirep',但无法正确配置(haproxy进程在尝试重启时抛出错误)。

非常感谢在这方面的任何帮助。

1 个答案:

答案 0 :(得分:1)

显然,版本1.4.2x不支持URL重写(即使URL重定向使用'reqirep'在服务器端工作)。我们将升级到支持该功能的1.5.x版。

发布此答案,以便它可以帮助遇到相同方案的人。