【问题标题】:Re-routing http requests based on full domain name根据全域名重新路由http请求
【发布时间】:2012-02-15 16:03:04
【问题描述】:

假设我在每种可想到的技术上都有多个 http 服务器。例如用于 PHP 的 Apache、用于 JSP 的 Tomcat 等等......在一台机器上运行,具有一个物理接口和一个公共 IP。

现在,我希望它们都在同一个端口上响应,当然是 80。这是不可能的,因为一个应用程序 = 一个使用 TCP/IP 的端口。我知道,例如 apache 可以集成 Tomcat,并处理 .jsp 页面上的请求给他,但我正在考虑不同的、更通用的方法。

有可能,也许更好的问题是,是否有任何应用程序可以预先过滤 http 请求并将它们转发到不同的端口?基于请求的域?双向?所以客户会认为他正在与端口 80 通信,但在内部,他将由运行在端口 8080 上的 Tomcat 服务?我希望你明白我的意思。

谢谢。

【问题讨论】:

    标签: apache tomcat url-routing port


    【解决方案1】:

    我会使用反向代理,例如 apache mod_proxy。反向代理将传入请求重新路由到正确的服务器,即使所有服务器都在同一物理主机上。

    只要必须通过单个公共 IP 地址访问多个 Web 服务器,就可以使用反向代理。 Web 服务器侦听同一台机器上的不同端口,具有相同的本地 IP 地址,或者可能在不同的机器和不同的本地 IP 地址上进行侦听。反向代理分析每个传入呼叫并将其传递到局域网内的正确服务器。

    http://en.wikipedia.org/wiki/Reverse_proxy

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-27
      • 2019-12-07
      • 2018-08-07
      • 2017-02-21
      • 1970-01-01
      • 2015-04-17
      • 2014-01-30
      • 2020-04-16
      相关资源
      最近更新 更多