配置 Haproxy 前端以在请求等于 Host/A/* 时将客户端请求从 Host/A/* 重定向到 Host/B/*

Posted

技术标签:

【中文标题】配置 Haproxy 前端以在请求等于 Host/A/* 时将客户端请求从 Host/A/* 重定向到 Host/B/*【英文标题】:Config Haproxy front-end to redirect client requests from Host/A/* to Host/B/* when request equals Host/A/* 【发布时间】:2021-10-09 23:44:29 【问题描述】:

我运行一个 Web 服务器 (RHEL7),它使用 haproxy v1.5 作为远程客户端请求的前端,并托管一个 Web 应用程序场,每个 Web 应用程序都在 Web 文档根目录下的特定目录中运行(即 /App001/ 、/App002/ 等)。

我最近重命名了一个应用程序文件夹并重新配置了应用程序以使用新位置,它工作正常,但我们有指向旧应用程序子文件夹的旧文档,我希望 haproxy 重定向远程客户端请求将旧位置(即 /OldAppFolder/)移动到新位置 (/NewAppFolder/),以避免出现页面未找到错误。

重定向必须是有条件的,以便它只重定向寻求 /OldAppFolder/* 的客户端请求

这容易吗?谢谢!

【问题讨论】:

【参考方案1】:

这将对用户透明地重写 URL。

reqrep  ^([^\ :]*)\ /OldAppFolder/(.*) \1\ /NewAppFolder/\2 if  path_beg /OldAppFolder/ 

【讨论】:

以上是关于配置 Haproxy 前端以在请求等于 Host/A/* 时将客户端请求从 Host/A/* 重定向到 Host/B/*的主要内容,如果未能解决你的问题,请参考以下文章

HAproxy用法深入

haproxy定义规则

配置 Haproxy 防范 DDOS 攻击

配置 Haproxy 防止 DDOS 攻击

HAProxy与Nginx区别

使用命令行启停HAProxy的Backend