HAProxy 中 URL 的 Reg Exp

HAProxy 中 URL 的 Reg Exp

我正在尝试为 haproxy 构建一个 reg exp,它将匹配第二个 URL,并将其指向与第一个不同的 acl:

mysite.com/path/
mysite.com/path/something_random

问题是,我的第一个 reg exp 匹配了上面的两个 url,而它应该只匹配第二个 url。我也找不到更多关于 haproxy regex 格式的文档,所以我甚至不确定在哪里可以找到我应该用于匹配的 reg exp 格式。reg exp pro 能帮我吗?我是新手,谢谢。

 acl filebrowser_route path_reg ^/path/.*
 acl filebrowser url_beg /path

答案1

您需要构建两个互斥的正则表达式:每次只能有一个为真:

如果将第二项设为如下正则表达式会怎么样:

^/path[^/]

意思[^/]是“任何不是 / 的字符”。

以下是三个互斥的 URL:

acl fb1 path_reg ^/path$          # Just /path
acl fb2 path_reg ^/path/$         # Just /path/
acl fb3 path_reg ^/path/..*$      # /path/ plus at least 1 character

相关内容