Hi
On February 13, 2024 12:20:26 AM UTC, Joel Carnat <j...@carnat.net> wrote:
>Hello,
>
>I'm trying to configure relayd(8) to use tags, to allow legit host names only
>and modify HTTP headers, and fallback. But I can't have it working properly.
>
>Using such a configuration:
>#-8<-------
>table <primary> { 192.0.2.4 }
>table <fallback> { 192.0.2.7}
>http protocol www {
> block
> match request header "Host" value "www.example" tag "example"
> pass request tagged "example" forward to <primary>
Try:
match request header "Host" value "www.example" tag example
pass forward to <primary> tagged example
>}
>relay www {
> listen on 192.0.2.30 port 80
> protocol www
> forward to <primary> port 80 check http "/" code 200
> forward to <fallback> port 80
>}
>#-8<-------
>forwards all tagged HTTP traffic to the primary server. But if it is turned
>off, relayd(8) only replies with error rather than sending the traffic to the
>fallback server.
>
What errors are you having?
>Removing tags and using a simple "pass" directive in protocol (as described in
>the man page) does work as expected regarding the fallback server.
>
>Is there a way to use both tags and fallback with relayd(8) to mimic Apache's
>Failover[1] configuration with "ProxyPass" and "BalancerMember (...)
>status=+H" ?
>
>Thank you,
>Joel C.
>
>[1] https://httpd.apache.org/docs/trunk/howto/reverse_proxy.html#failover
>
https://man.openbsd.org/relayd.conf.5#tag