DOC: config: explain how default matching method for ACL works

In issue #698, it's made apparent that the default matching method for
ACL keywords can be confusing when a converter is applied, because
depending on the converters used, users may think that the default
matching method from the sample fetch name might apply to the whole
expression. It's easier to understand that this doesn't make sense
when thinking about converters turning to completely different types
(e.g. hdr_beg(host),do_resolve() returns an IP, thus it's obvious
that _beg makes no sense at all).  This patch states this in the
doc to avoid future confusion.
This commit is contained in:
Willy Tarreau 2022-11-25 10:49:41 +01:00
parent 7fe0c62516
commit 4f4fea417b

View File

@ -16470,7 +16470,11 @@ possible to convert the sample to lowercase before matching, like this :
All ACL-specific criteria imply a default matching method. Most often, these
criteria are composed by concatenating the name of the original sample fetch
method and the matching method. For example, "hdr_beg" applies the "beg" match
to samples retrieved using the "hdr" fetch method. Since all ACL-specific
to samples retrieved using the "hdr" fetch method. This matching method is only
usable when the keyword is used alone, without any converter. In case any such
converter were to be applied after such an ACL keyword, the default matching
method from the ACL keyword is simply ignored since what will matter for the
matching is the output type of the last converter. Since all ACL-specific
criteria rely on a sample fetch method, it is always possible instead to use
the original sample fetch method and the explicit matching method using "-m".