Câu hỏi Yêu cầu định tuyến dựa trên url


Tôi đang thiết lập một vài dịch vụ sẽ nằm sau một IP duy nhất (tức là NAT). Một số dịch vụ này sẽ sử dụng cùng một cổng. Ví dụ: giả sử tôi sẽ lưu trữ hai trang web khác nhau trên các máy chủ WebA và WebB khác nhau. Để một người truy cập bên ngoài, tôi muốn cả hai để sử dụng cổng 80. Xác định máy chủ nào nên trả lời yêu cầu nên được thực hiện bằng cách kiểm tra url, nói rằng tôi có weba.example.com và webb.example.com, chúng phải được phục vụ từ máy chủ thích hợp.

Tại nơi làm việc tôi biết rằng chúng tôi làm điều này bằng cách sử dụng F5 loadbalancers và xây dựng các quy tắc được gọi là "iRules". Đó là quá mức cần thiết cho kịch bản của tôi. Những công cụ có sẵn để thực hiện điều này? Tôi nhìn vào Zen Loadbalancer vì tôi nghĩ rằng nó sẽ là thứ mà tất cả những người chịu tải đều làm, nhưng có vẻ như không.


1
2017-10-09 20:30


gốc




Các câu trả lời:


Mực có thể hoạt động như một proxy web đảo ngược  làm những gì bạn muốn - xem Proxy ngược với nhiều máy chủ Web phụ trợ

Bạn có thể thiết lập router để chuyển tiếp cổng 80 đến máy chủ mực và để mực chuyển tiếp yêu cầu tới các máy chủ web nội bộ khác nhau.


3
2017-10-09 21:02





Proxy ngược thực hiện chính xác những gì bạn muốn, và Apache hỗ trợ chúng.

Bạn có thể gặp sự cố nếu ứng dụng web sử dụng Javascript nặng hoặc kỳ lạ. Bạn cũng có thể cần thay đổi bất kỳ cấu hình nào mà ứng dụng web sử dụng - một số cần phải được cho biết URL nào cần trả về khi tạo trang phản hồi và các trang đó.

Đây là một hướng dẫn mà tôi đã sử dụng trong quá khứ.


3
2017-10-09 21:00





Đối với các máy chủ web, bạn có thể sử dụng máy chủ ảo + Apache + mod_proxy được định cấu hình làm proxy ngược.


0
2017-10-09 20:56



Ngoài ra, nó có thể là giá trị nhìn Pirhana. Tôi không có kinh nghiệm với nó, nhưng tin rằng đối với đa giao thức LB nó có thể là một giải pháp. - gerryk