nginx 下面的配置 listen 192.168.121.37:443 ssl; access_log /data/nginx/logs/tcp-access.log access; #listen [2001:470:fcb4:172::3b]:443 ssl; proxy_connect_timeout 60s; proxy_timeout 60s; proxy_pass 127.0.0.1:10014; proxy_protocol on; 改成haproxy
时间: 2024-02-25 19:53:23 浏览: 21
将 Nginx 的配置改为 HAProxy 的配置,可以参考以下的配置:
```
frontend tcp_frontend
bind 192.168.121.37:443 ssl crt /path/to/certificate.crt
default_backend tcp_backend
backend tcp_backend
mode tcp
option tcplog
balance roundrobin
server backend_server 127.0.0.1:10014 check
timeout connect 60s
timeout server 24h
timeout client 24h
# 启用代理协议
tcp-request inspect-delay 5s
tcp-request content accept if { req.ssl_hello_type 1 }
tcp-request content accept if { req.ssl_hello_type 2 }
tcp-request content accept if { req.ssl_hello_type 3 }
tcp-request content accept if { req.ssl_hello_type 4 }
tcp-request content accept if { req.ssl_hello_type 5 }
tcp-request content accept if { req.ssl_hello_type 6 }
tcp-request content accept if { req.ssl_hello_type 10 }
tcp-request content accept if { req.ssl_hello_type 11 }
tcp-request content accept if { req.ssl_hello_type 12 }
```
这个 HAProxy 的配置与之前的 Nginx 配置相似,都是监听 192.168.121.37 的 443 端口,并开启 SSL 加密。这个配置使用 `mode tcp` 表示 HAProxy 将会作为一个 TCP 代理,而不是 HTTP 代理。同时启用 tcplog 选项记录连接日志。
该配置使用 `balance roundrobin` 来实现负载均衡,将请求转发给名为 `backend_server` 的后端服务器,该服务器的 IP 地址为 127.0.0.1,端口为 10014。
该配置还使用了 `timeout connect`、`timeout server`、`timeout client` 选项来设置连接超时时间、后端服务器超时时间和客户端超时时间,分别为 60 秒、24 小时和 24 小时。
最后,该配置启用了代理协议(proxy_protocol),并通过 `tcp-request inspect-delay` 和 `tcp-request content accept` 选项来开启代理协议的支持。这个配置与 Nginx 中的 proxy_protocol 选项类似,会在与后端服务器建立 TCP 连接时,向后端服务器发送代理协议头部信息。