我正在测试一个简单的haproxy规则,让http://localhost/haproxy-dconv转到http://cbonte.github.io/haproxy-dconv,但它无效。 404响应似乎来自网站,但路径没有解决。
frontend HTTP
mode http
bind *:80
acl url_dconv path_beg /haproxy-dconv
use_backend dconv-backend if url_dconv
backend dconv-backend
mode http
server dconv cbonte.github.io
答案 0 :(得分:1)
试试这个 -
frontend HTTP
mode http
bind *:80
use_backend dconv-backend if { path_beg /haproxy-dconv/ }
backend dconv-backend
mode http
server dconv cbonte.github.io
来源:https://cbonte.github.io/haproxy-dconv/1.7/configuration.html#use_backend
答案 1 :(得分:0)
这是因为正在发送的Host头是localhost,而不是cbonte.github.io。将其添加到您的后端:
http-request set-header Host cbonte.github.io
另请注意,如果没有结束斜杠,您将获得301,因此请务必发送http://localhost/cbonte-dconv/并修复您的ACL。