我们试图让HAProxy监听来自端口443 (HTTPS & WSS)的所有传入通信量。
下面是我们的HAProxy配置:
frontend wwws
bind 0.0.0.0:443 ssl crt /etc/haproxy/server.pem
timeout client 1h
default_backend www_backend
backend www_backend
mode http
stats enable
stats uri /haproxy
option forwardfor
reqadd x-forwarded-proto:\ https
server server1 backend:3000 weight 1 maxconn 8192 check
0.0.0.0:443 (例如https://example.com)是我们的HA代理服务器,侦听所有传入的443通信量后端:3000是我们的nginx服务器,它被设置为侦听SSL连接
当前我们面临的问题是,当我们输入https://example.com时,浏览器会显示以下错误:
400 Bad Request
The plain HTTP request was sent to HTTPS port
nginx/1.7.5
当http将流量转发给nginx (后端:3000)时,它确实会将流量转换为http。
我认为,"reqadd转发-proto:\ https“应该确保它是https。
不确定我们的haproxy配置有什么问题。
发布于 2015-06-25 12:15:42
将后端服务器规范更改为:
server server1 backend:3000 weight 1 maxconn 8192 check ssl verify none
"ssl“部分定义后端使用SSL,如果它不存在,haproxy将默认为普通HTTP。“无验证”禁用证书检查,这可能是您不想对内部服务器执行的操作。
https://serverfault.com/questions/701580
复制相似问题