当前位置: 代码迷 >> Java Web开发 >> tomcat多域名配置替题
  详细解决方案

tomcat多域名配置替题

热度:55   发布时间:2016-04-13 22:11:14.0
tomcat多域名配置为题
tomcat多个域名访问同一个应用的不同页面,怎么配置,求大神。
网上查资料都是要配置多个虚拟主机,多个应用。
------解决思路----------------------
找个前端代理,比如 nginx,很简单就可以搞定你的需求。无需要配置多个虚拟主机、多个应用
------解决思路----------------------
这样配置:
server {
    listen      8091;
    server_name www.test.com;
    location / {
        proxy_pass http://localhost:8080/aa/;
        include proxy.conf;
    }
}

server {
    listen      8092;
    server_name www.example.com;
    location / {
        proxy_pass http://localhost:8080/bb/;
        include proxy.conf;
    }
}

比如 nginx 公网 ip 是 111.111.111.111,那么你只需将 www.test.com 解析到 111.111.111.111:8091,将 www.example.com 解析到 111.111.111.111:8092 即可。
------解决思路----------------------
proxy.conf 是我们的一些通用代理配置,比如 proxy_set_header、超时时间之类的东东。
另外页面不要用 redirect 跳转,比如 s2:
		<action name="login" class="com.defonds.action.GetUserNameAction"
method="loginForGetUser">
<result name="success" type="redirect">/view/main/jsp/index.jsp</result>
<result name="login">/index.jsp</result>
</action>

换成
		<action name="login" class="com.defonds.action.GetUserNameAction"
method="loginForGetUser">
<result name="success" type="redirect">/view/main/jsp/index.jsp</result>
<result name="login">/index.jsp</result>
</action>

此外,proxy.conf 的参考内容给你看看:
proxy_redirect   off;
proxy_set_header   Host             $host;
proxy_set_header   X-Real-IP        $remote_addr;
proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
proxy_connect_timeout 60;
proxy_read_timeout 600;
proxy_set_header   X-Forwarded-Proto $scheme;

Good luck~
  相关解决方案