Я мав певний успіх із налаштуванням HAProxy у купі серверів додатків, які прослуховували на різних інших портах.
Зараз у мене на одному порту прослуховується ще один веб-сервер, і я хотів би внести зміни в конфігурацію для потоку трафіку за іменем хоста.
Далі йде поточна установка, якщо припустити:
- мій веб-сервер apache працює на examplecom: 8001
- мій сервер додатків 0.0.0.0:8081, 0.0.0.0:8082, 0.0.0.0:8083
global log 127.0.0.1 local0 log 127.0.0.1 local1 notice maxconn 4096 debug #quiet #user haproxy #group haproxy defaults log global mode http option httplog option dontlognull retries 3 redispatch maxconn 2000 contimeout 5000 clitimeout 50000 srvtimeout 50000 listen appservers 0.0.0.0:80 mode http balance roundrobin option httpclose option forwardfor #option httpchk HEAD /check.txt HTTP/1.0 server inst1 0.0.0.0:8081 cookie server01 check inter 2000 fall 3 server inst2 0.0.0.0:8082 cookie server02 check inter 2000 fall 3 server inst3 0.0.0.0:8083 cookie server01 check inter 2000 fall 3 server inst4 0.0.0.0:8084 cookie server02 check inter 2000 fall 3 capture cookie vgnvisitor= len 32
(будь-які інші коментарі до налаштування ^ вітаються.)
Тепер я хотів би продовжити те саме вище, але на додаток у випадку, якщо ім'я хоста є myspecialtopleveldomain <dot> com, то я хотів би передати трафік на приклад <dot> com: 8001
~ В
2
Можна надіслати запити на різні сервери на основі імені хоста, використовуючи конфігурацію frontend & backkend. Ваше запитання трохи заплутане, ви згадуєте example.com:8001, але його немає ніде в конфігурації. Це місце для запитів на myspecialtopleveldomain.com на порт 80? Можливо, ви можете надати кілька прикладних URL-адрес, які користувачі ввели б і де ви хочете, щоб ці URL-адреси надсилалися haproxy.
—
ThatGraemeGuy