regex HAProxy替换URL

nhhxz33t  于 12个月前  发布在  HAProxy
关注(0)|答案(2)|浏览(155)

我有域,URL为:
https://example.com/browse/TEST-1
我需要在ha-proxy 2.0中将此URL更改为:
https://example.com/issue/TEST-1
我试着:

http-request replace-path ^([^\ :]*)\ /browse/(.*) \1\ /issue/\2
http-request replace-path ^([^\ :]*)\ /browse/(.*)     \1\ /issue/\2
reqrep ^([^\ :]*)\ /browse/(.*)     \1\ /issue/\2
http-request replace-uri /browse/(.*) /issue/\1
http-request replace-path ^/browse/(.*) /issue/\1

我没主意了,我做错什么了?

xurqigkl

xurqigkl1#

没有必要为此而使用正则表达式。我相信在haproxy.cfg文件中添加这个就可以完成这项工作:

frontend http_front
   bind *:80
   bind *:443 ssl crt /path/to/ssl/certificate.pem

   acl is_test1 path_beg /browse/TEST-1

   http-request set-path /issue/TEST-1 if is_test1
ssgvzors

ssgvzors2#

这里有一个参考。
此模式将捕获除 "/browse/" 之外的元素。

(.+?\/\/.+)\/.+\/(.+)

你可以用,

\1/issue/\2

相关问题