2015-01-05 101 views
0

我有两个网站在一台机器上的两台不同的两台Tomcat服务器上运行。一个Tomcat正在侦听80端口,其他8080端口。访问在端口8080上运行的Tomcat,而不在URL中追加端口

要求是,我想访问这两个网站而不追加端口。为例如:

  1. 站点A http://www.siteA.com(Tomcat的1:端口80)

  2. 站点B http://www.siteB.com(Tomcat的2:端口8080),

目前站点B是可访问的通过http://www.siteB.com:8080。什么是可能的选择,所以我可以不追加8080端口(即http://www.siteB.com)和无域正和访问B网站标志,我正在考虑以下几点:

  1. 代理服务器
  2. 路由器

请分享一些有用的指针。谢谢。

Kamran

回答

0

我相信这是一个很好的反向代理用例。
这个答案是一个很好的起点,以帮助您设置您的要求,采用NGINX:https://stackoverflow.com/a/13241047/967410

适用于你的情况,这将是这样的:

server { 
    server_name www.siteA.com; 

    # siteA reverse proxy follow 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header Host $host; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    proxy_pass $scheme://x.x.x.x:80; 
} 

server { 
    server_name www.siteB.com; 

    # siteB reverse proxy settings follow 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header Host $host; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    proxy_pass http://x.x.x.x:8080; 
} 
0

为什么不跑的httpd端口80并使用mod_rewrite转发请求?

看来在这种情况下,您真正​​关心的是主机名,无论如何。

显然,在这种情况下,您将在80以外的端口上拥有两个tomcat实例。

相关问题