HAProxy 中 URL 的正規表示式

HAProxy 中 URL 的正規表示式

我正在嘗試為 haproxy 建立一個 reg exp,它將匹配第二個 URL,並將其定向到與第一個 URL 不同的 acl:

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

問題是我的第一個 reg exp 與上面的兩個 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

相關內容