![HAProxy의 URL에 대한 등록 표현식](https://rvso.com/image/668793/HAProxy%EC%9D%98%20URL%EC%97%90%20%EB%8C%80%ED%95%9C%20%EB%93%B1%EB%A1%9D%20%ED%91%9C%ED%98%84%EC%8B%9D.png)
두 번째 URL과 일치하고 첫 번째 URL과 다른 acl로 연결되는 haproxy에 대한 reg exp를 작성하려고 합니다.
mysite.com/path/
mysite.com/path/something_random
문제는 내 첫 번째 정규 표현식이 두 번째 URL에만 일치해야 하는데 위의 두 URL과 모두 일치한다는 것입니다. haproxy regex 형식에 대한 추가 문서를 찾을 수 없으므로 일치를 위해 사용해야 하는 reg exp 형식을 어디에서 참조해야 할지조차 모르겠습니다. Exp Pro를 등록하면 도움이 될 수 있습니다. 이 기능이 처음입니다. 감사합니다.
acl filebrowser_route path_reg ^/path/.*
acl filebrowser url_beg /path
답변1
상호 배타적인 두 개의 정규식을 구성해야 합니다. 한 번에 하나만 true일 수 있습니다.
두 번째 항목을 다음과 같은 정규식으로 만들면 어떨까요?
^/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