将地址映射到多个tomcat实例

时间:2012-01-23 13:09:11

标签: apache tomcat hosting ip

我在Windows Server 2008计算机上运行了3个tomcat实例。每个人都有一个应用程序:

如何配置我的服务器以映射没有端口号的地址?

是tomcat配置还是DNS的东西?

感谢。


好的,我尝试了以下内容:

  • 设置Apache 2.2
  • 配置httpd.conf加载代理模块
  • 并添加代理模块配置:

    ProxyRequests Off
    ProxyPass /app1 http://machine:8081/app
    ProxyPassReverse /app1 http://machine:8081/app
    
    <Location "/app">
      Order allow,deny
      Allow from all
    </Location>
    

现在,重定向在本机中运行良好。但是当我尝试从同一网络中的另一台机器进行访问时,它不起作用。 (这个另一台机器可以ping'机器'主机。我也试过把ip号码。)

3 个答案:

答案 0 :(得分:1)

例如,您可以使用nginx(http://nginx.org/en/docs/)作为代理。

尝试简单(无负载平衡等):

    server {

    listen here.your.ip:80/YourApp;

    location / {
        root /path/to/your/webapp;
        proxy_pass http://host:8080/YourApp;
    }

}

其他端口的方式相同

答案 1 :(得分:0)

在Apache之后使用多个Tomcats进行负载平衡是很常见的。虽然这不是负载平衡,但原理是相同的。不是让一个应用程序拥有3个负载均衡的Tomcat工作器,而是拥有3个应用程序,每个应用程序有1个tomcat worker。

您可以在此处找到tomcat文档:http://tomcat.apache.org/connectors-doc/

答案 2 :(得分:0)

mod proxy configuration上的以下代码中尝试httpd

ProxyPass           /app0   http://localhost:8080/app0/
ProxyPassReverse    /app0   http://localhost:8080/app0/
ProxyPass           /app1   http://localhost:8081/app1/
ProxyPassReverse    /app1   http://localhost:8081/app1/
ProxyPass           /app2   http://localhost:8082/app2/
ProxyPassReverse    /app2   http://localhost:8082/app2/