【发布时间】:2020-07-25 16:40:17
【问题描述】:
我们正在为我们的应用程序使用 HAProxy。我们有一个单独的服务器用于站点、API、文档和博客。 我们有以下 HAproxy 配置
frontend http
mode http
bind *:80
redirect prefix https://www.kbook.com code 301 if { hdr(host) -i kbook.com }
redirect scheme https code 301 if { hdr(host) -i www.kbook.com } !{ ssl_fc }
redirect scheme https code 301 if { hdr(host) -i docs.kbook.com } !{ ssl_fc }
redirect scheme https code 301 if { hdr(host) -i api.kbook.com } !{ ssl_fc }
acl www hdr(host) -i www.kbook.com
acl docs hdr(host) -i docs.kbook.com
acl api hdr(host) -i api.kbook.com
acl blog path -i -m beg /blog
use_backend blog_server if www blog
use_backend site_server if www
use_backend api_server if api
use_backend docs_server if docs
frontend https
mode http
bind *:443 ssl crt /etc/ssl/live/wildcard_kbook.pem alpn h2,http/1.1
redirect prefix https://www.kbook.com code 301 if { hdr(host) -i kbook.com }
use_backend blog_server if { ssl_fc_sni -i www.kbook.com } { path -i -m beg /blog }
use_backend site_server if { ssl_fc_sni -i www.kbook.com }
use_backend api_server if { ssl_fc_sni -i api.kbook.com }
use_backend docs_server if { ssl_fc_sni -i docs.kbook.com }
HAProxy 版本:2.2.0-1ppa1~bionic
问题:
当我们访问该网站 (www.kbook.com) 时,它有时会起作用。有时它会转到博客服务器,说 404 未找到。我希望“www.kbook.com”应该始终访问站点服务器。 这甚至发生在文档和 API 请求中。这些请求有时也会发送到博客服务器。
HAproxy 将请求定向到错误的服务器。为什么会这样?配置有问题吗?
【问题讨论】:
标签: haproxy