Stashbox/haproxy.conf
2024-02-23 03:31:17 -05:00

55 lines
1.4 KiB
Plaintext

global
daemon
log /var/log/haproxy.log local0
maxconn 4096
defaults
log global
mode http
option httplog
timeout connect 10s
timeout client 30s
timeout server 30s
timeout client-fin 30s
timeout tunnel 30m
frontend http
mode http
bind ip4.stashbox:80
http-request set-header X-Forwarded-For %[src]
use_backend http.plex if { hdr(host) -m sub plex }
use_backend http.app if { hdr(host) -m sub clip }
use_backend http.app if { hdr(host) -m sub browse }
use_backend http.app if { hdr(host) -m sub notes }
use_backend http.web if { hdr(host) -m sub stash }
backend http.plex
mode http
server feed plex.stashbox:80 check
backend http.web
mode http
server web web.stashbox:80 check
backend http.app
mode http
server app app.stashbox:80 check
frontend tcp-sni
bind ip4.stashbox:443
mode tcp
option tcplog
log global
log /var/log/haproxy-https.log local0
tcp-request inspect-delay 5s
tcp-request content accept if { req.ssl_hello_type 1 }
use_backend https.app if { req.ssl_sni -m sub clip }
use_backend https.app if { req.ssl_sni -m sub browse }
use_backend https.app if { req.ssl_sni -m sub notes }
use_backend https.web if { req.ssl_sni -m sub stash }
backend https.web
mode tcp
server web web.stashbox:443 send-proxy
backend https.app
mode tcp
server app app.stashbox:443 send-proxy