Openshift 已设置的X-Forwarded-Host标头不应被HaProxy覆盖
有人能告诉我如何在openshift 3.11中配置自定义ha代理路由器(haproxy config.template)以避免X-Forwarded-Host、X-Forwarded-Port和X-Forwarded-Proto头在haproxy已设置时不被覆盖。如果未设置标头,则应根据HTTP标准进行设置 我试过了,但不起作用 谢谢,Openshift 已设置的X-Forwarded-Host标头不应被HaProxy覆盖,openshift,router,haproxy,Openshift,Router,Haproxy,有人能告诉我如何在openshift 3.11中配置自定义ha代理路由器(haproxy config.template)以避免X-Forwarded-Host、X-Forwarded-Port和X-Forwarded-Proto头在haproxy已设置时不被覆盖。如果未设置标头,则应根据HTTP标准进行设置 我试过了,但不起作用 谢谢, Santosh下面的代码对我很有用: 旧配置: http-request set-header X-Forwarded-Host %[req.hdr(h
Santosh下面的代码对我很有用: 旧配置:
http-request set-header X-Forwarded-Host %[req.hdr(host)]
http-request set-header X-Forwarded-Port %[dst_port]
http-request set-header X-Forwarded-Proto http if !{ ssl_fc }
http-request set-header X-Forwarded-Proto https if { ssl_fc }
更改为新的:
acl h_xfh_exists req.hdr(X-Forwarded-Host) -m found
http-request set-header X-Forwarded-Host %[req.hdr(host)] unless h_xfh_exists
acl h_xfport_exists req.hdr(X-Forwarded-Port) -m found
http-request set-header X-Forwarded-Port %[dst_port] unless h_xfport_exists
acl h_xfproto_exists req.hdr(X-Forwarded-Proto) -m found
http-request set-header X-Forwarded-Proto http if !{ ssl_fc } !h_xfproto_exists
http-request set-header X-Forwarded-Proto https if { ssl_fc } !h_xfproto_exists