haproxy 剪切后端路径而不删除文件夹本身

haproxy 剪切后端路径而不删除文件夹本身

我想从后端位置的 URL 中剪切一个子站点,因此我尝试了这个:

http-request replace-path ^/subsite/css/(.*) /\1 if { path_beg /subsite/css/ }

但是 CSS 文件位于文件夹 /css/ 中,这意味着我不幸也删除了该文件夹。如果我只删除子站点,如下所示:

http-request replace-path ^/subsite/(.*) /\1 if { path_beg /subsite/ }

它解决了访问 css 文件的问题,但是所有其他文件都无法访问。有没有办法仅在请求为“/subsite/css/*”时切断子站点?

答案1

问题不是完全清楚,但如果我理解正确的话,你只需要添加/css替换字符串。

http-request replace-path ^/subsite/css/(.*) /css/\1 if { path_beg /subsite/css/ }

有关 PCRE 在 HAProxy 中的工作原理的详细信息,请参阅HAProxy 文档

相关内容