Tôi đã có một số thành công ban đầu với HAProxy khi thiết lập một loạt các máy chủ ứng dụng nghe trên nhiều cổng khác nhau.
Bây giờ tôi có một máy chủ web khác lắng nghe trên một cổng và tôi cũng muốn thay đổi cấu hình của mình để chuyển lưu lượng theo tên máy chủ.
Sau đây là thiết lập hiện tại, giả sử:
- máy chủ web apache của tôi đang chạy tại kỳ thi: 8001
- nhóm máy chủ ứng dụng của tôi 0.0.0.0:8081, 0.0.0.0:8082, 0.0.0.0:8083
global log 127.0.0.1 local0 log 127.0.0.1 local1 notice maxconn 4096 debug #quiet #user haproxy #group haproxy defaults log global mode http option httplog option dontlognull retries 3 redispatch maxconn 2000 contimeout 5000 clitimeout 50000 srvtimeout 50000 listen appservers 0.0.0.0:80 mode http balance roundrobin option httpclose option forwardfor #option httpchk HEAD /check.txt HTTP/1.0 server inst1 0.0.0.0:8081 cookie server01 check inter 2000 fall 3 server inst2 0.0.0.0:8082 cookie server02 check inter 2000 fall 3 server inst3 0.0.0.0:8083 cookie server01 check inter 2000 fall 3 server inst4 0.0.0.0:8084 cookie server02 check inter 2000 fall 3 capture cookie vgnvisitor= len 32
(mọi ý kiến khác về thiết lập ^ đều được chào đón.)
Bây giờ tôi muốn tiếp tục như trên, nhưng trong trường hợp - nếu tên máy chủ là myspecialtopleveldomain <dot> com, thì tôi muốn chuyển lưu lượng truy cập sang ví dụ <dot> com: 8001
~ B
2
Có thể gửi yêu cầu đến các máy chủ khác nhau dựa trên tên máy chủ bằng cấu hình frontend & backend. Câu hỏi của bạn hơi khó hiểu, bạn đề cập đến example.com:8001, nhưng nó không có trong cấu hình ở bất cứ đâu. Đó có phải là đích đến cho các yêu cầu tới myspecialtopleveldomain.com trên cổng 80 không? Có lẽ bạn có thể cung cấp một vài URL mẫu mà người dùng sẽ nhập và nơi bạn muốn các URL đó được gửi bởi haproxy.
—
ThatGraemeGuy