Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save nk23x/103581ec4a79e65b8239eee602f60a5a to your computer and use it in GitHub Desktop.
Save nk23x/103581ec4a79e65b8239eee602f60a5a to your computer and use it in GitHub Desktop.
HAProxy reverse proxy configuration with URL rewriting for two backends
global
log 127.0.0.1 local2
maxconn 2048
tune.ssl.default-dh-param 2048
defaults
mode http
log global
option httplog
option dontlognull
option http-server-close
option forwardfor except 127.0.0.0/8
option redispatch
retries 3
timeout http-request 10s
timeout queue 1m
timeout connect 10s
timeout client 1m
timeout server 1m
timeout http-keep-alive 10s
timeout check 10s
frontend fe-test
bind *:80
acl ac-web1 path_beg /web1
acl ac-web2 path_beg /web2
use_backend be-web1 if ac-web1
use_backend be-web2 if ac-web2
backend be-web1
server static web-a:80 check
reqrep ^([^\ :]*)\ /web1[/]?(.*) \1\ /aaa/\2
backend be-web2
server static web-b:80 check
reqrep ^([^\ :]*)\ /web2[/]?(.*) \1\ /bbb/\2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment