相关疑难解决方法(0)

如何在tcp模式下将客户端的IP地址从Haproxy转发到Nginx

我想以 tcp 模式将真实客户端的 IP 地址从 haproxy 转发到我的后端服务器。Haproxy的配置如下:

frontend main
    bind *:80
    mode http
    option forwardfor
    option http-server-close    
    default_backend app-main

frontend https_main
    bind *:443
    mode tcp
    option tcplog
    option tcpka
    default_backend app-ssl

backend app-main
    balance roundrobin
    server web1 192.168.1.22:8080 check fall 3 rise 2
    server web2 192.168.1.33:8080 check fall 3 rise 2

backend app-ssl
    balance roundrobin
    mode tcp
    option ssl-hello-chk
    server web3 192.168.1.44:443
Run Code Online (Sandbox Code Playgroud)

http 请求的后端服务器是 apache,我用日志行替换了 httpd.conf 中的以下行,所以我现在可以正确获取客户端的 ip 地址:

LogFormat "%h %l %u %t \"%r\" %>s %b %{X-Forwarded-For}i" common
Run Code Online (Sandbox Code Playgroud)

我的 …

linux nginx logging haproxy

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

haproxy ×1

linux ×1

logging ×1

nginx ×1