2012-04-03 17 views
9

Tôi có một trang tại host1.mydomain.com/page_from_host1.jsp và một trang HTML tại host2.mydomain.com/page_from_host2.html. host1 là một hộp IIS7/Tomcat và host2 là một hộp IIS7. Tôi muốn cho phép trang đầu tiên gửi biểu mẫu, hiển thị trang thứ hai và URL không thay đổi.Làm cách nào tôi có thể thiết lập proxy ngược trên IIS, cho phép giao tiếp giữa máy chủ lưu trữ giữa host1.mydomain.com và host2.mydomain.com?

Tức là, URL là host1.mydomain.com/page_rom_host2.jsp, nhưng nội dung của trang là từ host2.mydomain.com/page_from_host2.html.

Tôi tưởng tượng tôi có thể thiết lập proxy ngược trên IIS để thực hiện điều này, tương tự như mod_proxy, nhưng máy chủ Apache Tomcat ném một chút cờ lê vào tất cả những điều này. Làm thế nào tôi có thể thiết lập một proxy ngược lại để cho phép giao tiếp giữa các máy chủ và che dấu URL?

Cảm ơn bạn.

Trả lời

6

FYI URL dường như di chuyển ở đây:

http://www.iis.net/learn/extensions/url-rewrite-module/reverse-proxy-with-url-rewrite-v2-and-application-request-routing

Dưới đây là ý chính cơ bản:

Cài đặt hai điều này:

  • Application Request Routing
  • Url Rewrite Module

Configure "Application Request Routing" nút máy chủ

  • IIS -> Yêu cầu ứng dụng Routing cache
  • Máy chủ Proxy Settings
  • Kiểm tra "Enable Proxy"

Sau đó, người ta có thể cấu hình URL viết lại mô-đun khi cần.

0

Bằng cách sử dụng đoạn mã sau C# "Enable Proxy" có thể được kiểm tra/kích hoạt

ServerManager servMgr = new ServerManager(); 
Configuration config = servMgr.GetApplicationHostConfiguration(); 
ConfigurationSection proxySection = config.GetSection("system.webServer/proxy"); 
proxySection["enabled"] = true; 
servMgr.CommitChanges(); 
Các vấn đề liên quan