具有 ssl 和简单 acl 的 HAProxy http 模式表现异常

HAProxy http mode with ssl and simple acl behave weirdly

我正在尝试将 HAProxy 配置为仅允许在服务器上访问以特定路径开头的 URL。我的配置如下所示:

frontend test
 mode http
 bind *:50005 ssl crt /crt.crt
 timeout client  10800s
 timeout server  10800s

 http-request set-header X-Forwarded-Port %[dst_port]
 http-request add-header X-Forwarded-Proto https if { ssl_fc }
 redirect scheme https if !{ ssl_fc }

 acl only_api path_beg,url_dec -m beg -i /api/v1
 http-request deny if !only_api
 use_backend out-pt.groupinfra.com if only_api

backend myserver
 mode http
 server out myserver.com:443

所以基本上'myserver'用的是https,所以我需要转发成https。 我收到 502 Bad Gateway 错误。

我确实成功地使用了 tcp 模式,因为 ssl 只是通过。

您需要使用 ssl 连接到您的后端服务器:

server out myserver.com:443 ssl verify none

或者您需要验证证书

server out myserver.com:443 ssl verify required ca-file /path/to/your/backend/server.pem