Scoping rules by hostname is the single most common pattern in any real Fluxzy ruleset, because most decisions about TLS, authentication, or mocking depend on where the traffic is going. The hostFilter is the workhorse for that selection: it matches by name only, ignoring the port, and supports exact, regex, and substring operations for whatever level of precision your workflow needs.
Use hostFilter whenever a rule should be scoped by destination hostname, ignoring the port. The filter is evaluated as soon as Fluxzy knows the authority (during the CONNECT request for HTTPS, or from the request line for HTTP), so it composes cleanly with TLS, header, and routing actions.
Common situations:
For host plus port matching, use authorityFilter instead.
Force a specific TLS version for an upstream service that struggles with newer protocols.
rules:
- filter:
typeKind: HostFilter
pattern: legacy-api.example.com
operation: Exact
actions:
- typeKind: ForceTlsVersionAction
tlsVersion: Tls12
Cover every subdomain of example.com without having to enumerate them.
rules:
- filter:
typeKind: HostFilter
pattern: '.*\.example\.com$'
operation: Regex
actions:
- typeKind: ApplyTagAction
tag:
value: example-domain
Bypass interception when the destination uses certificate pinning that would break otherwise.
rules:
- filter:
typeKind: HostFilter
pattern: pinned.example.com
operation: Exact
actions:
- typeKind: SkipSslTunnelingAction
Select exchanges according to hostname (excluding port). To select authority (combination of host:port), use
Evaluation scope defines the timing where this filter will be applied.
onAuthorityReceived This scope denotes the moment fluxzy is aware the destination authority. In a regular proxy connection, it will occur the moment where fluxzy parsed the CONNECT request.
hostFilter
The following table describes the customizable properties available for this filter:
| Property | Type | Description | DefaultValue |
|---|---|---|---|
| pattern | string | The string pattern to search | |
| operation | exact | contains | startsWith | endsWith | regex | The search operation performed | exact |
| caseSensitive | boolean | true if the Search should be case sensitive | false |
| inverted | boolean | Negate the filter result | false |
The following examples apply a comment to the filtered exchange
Retains only exchanges with the exact host.
rules:
- filter:
typeKind: HostFilter
pattern: www.fluxzy.io
operation: Exact
actions:
- typeKind: ApplyCommentAction
comment: filter was applied
Retains only exchanges with a host matching the regex.
rules:
- filter:
typeKind: HostFilter
pattern: ^www\.fluxzy\.io$
operation: Regex
actions:
- typeKind: ApplyCommentAction
comment: filter was applied
View definition of HostFilter for .NET integration.
The following filters are related to this filter:
hostFilter matches the hostname only, ignoring the port. authorityFilter matches the host plus port combination, which is useful when several services share a name but listen on different ports.
Set caseSensitive: false (the default) for case insensitive matching, mirroring DNS semantics. Flip it to true only if you have a reason to care about case.
Exact is the safest default and matches the upstream documentation. Use Regex for sub domain wildcards, and Contains for quick exploratory rules during debugging.