web-dev-qa-db-ja.com

HAProxyのURLの正規表現

私は2番目のURLに一致し、最初のURLとは異なるACLにそれを導くhaproxyの正規表現を構築しようとしています:

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

問題は、最初の正規表現が2番目の正規表現とのみ一致するはずの、上記の両方のURLと一致することです。 haproxy regexの形式に関するドキュメントが見つからないため、照合に使用する必要があるreg exp形式をどこから参照すればよいかさえわかりません。正規表現のプロが私を助けてくれるので、このおかげで初めてです。

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

相互に排他的な2つの正規表現を作成する必要があります。一度にtrueになるのは1つだけです。

次のような正規表現にする場合はどうでしょうか。

^/path[^/]

[^/]は、「/ではない任意の文字」を意味します。

相互に排他的な3つの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
6
TomOnTime