Можно ли с помощью HAProxy 1.5 добавить заголовок запроса, значение которого является IP-адресом, используемым интерфейсом, привязка которого использует подстановочный знак?
Например, учитывая следующую конфигурацию, могу ли я чем-то заменить "% [fe_id]", чтобы получить переменный IP-адрес, который использовался для подключения к веб-интерфейсу?
frontend localhost
bind *:80
bind *:443 ssl crt /etc/ssl/ssl.pem
mode http
default_backend nodes
option forwardfor
backend nodes
mode http
balance roundrobin
http-request add-header X-FrontEnd-IP %[fe_id]
server web00 10.1.10.15:80 check
server web01 10.1.10.16:80 check
server web02 10.1.10.17:80 check
Я понял. Не знаю, как я это пропустил, но это переменная "dst". Итоговая конфигурация будет выглядеть так:
frontend localhost
bind *:80
bind *:443 ssl crt /etc/ssl/ssl.pem
mode http
default_backend nodes
option forwardfor
backend nodes
mode http
balance roundrobin
http-request add-header X-FrontEnd-IP %[dst]
server web00 10.1.10.15:80 check
server web01 10.1.10.16:80 check
server web02 10.1.10.17:80 check
Таким образом, мы можем видеть, поступил ли запрос изнутри или вне нашей сети, и веб-сервер может соответствующим образом адаптироваться.
Более того, получить доступ к этой переменной с помощью PHP так же просто, как использовать массив $ _SERVER с ключом «HTTP_X_FRONTEND_IP».
$_SERVER['HTTP_X_FRONTEND_IP']