Tomcat配置多个域名

long416811 2015-08-11 09:40:14
需要在同一台服务器上部署两个项目,并且两个项目的域名均不一样,我是用的是Tomcat7.0,是java web项目,按照网上的例子我将tomcat的server.xml文件进行了更改,
如下
<Host name="www.a.com" appBase=""
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/usr/local/tomcat/webapps/a" reloadable="true" caseSensitive="false" debug="0"></Context>
</Host>

<Host name="www.b.com" appBase=""
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/usr/local/tomcat/webapps/b" reloadable="true" caseSensitive="false" debug="0"></Context>
</Host>

通过Host配置多个域名,同时使用的是tongcat7.0,项目我都放在了tomcat下的webapps中,可是这样配置每次都只有一个项目可以正常访问,只有我做如下修改:
<Host name="www.a.com" appBase=""
unpackWARs="true" autoDeploy="true">
<Context path="" docBase="/usr/local/tomcat/webapps/a" reloadable="true" caseSensitive="false" debug="0"></Context>
</Host>

<Host name="www.b.com" appBase="webapps"
unpackWARs="true" autoDeploy="true">
</Host>

此时,www.a.com可以正常访问,www.b.com也可以访问,但是此时就必须输入项目名,比如:www.b.com/b
网上查阅了好多资料,没有可行的方法,我是不是项目不应该放在webapps下啊??特来求助啊 紧急啊 !!!!!!
...全文
536 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
浮云若水 2017-01-18
  • 打赏
  • 举报
回复
tomcat 前经Nginx来做域名转发
antony_jiang 2017-01-18
  • 打赏
  • 举报
回复
引用 7 楼 gongxiaobin911 的回复:
用apache代理转发吧,找到apache的匹配值文件,好像是httpd.conf文件,写个代理转发就ok了,部分代码 NameVirtualHost 101.200.204.103:80 <VirtualHost 101.200.204.103:80> ProxyPreserveHost On ProxyRequests Off ServerName www.jzmf.xyz ProxyPass / http://101.200.204.103:8080/ ProxyPassReverse / http://101.200.204.103:8080/ </VirtualHost> <VirtualHost 101.200.204.103:80> ProxyPreserveHost On ProxyRequests Off ServerName www.bjjzmf.xyz ProxyPass / http://101.200.204.103:8081/ ProxyPassReverse / http://101.200.204.103:8081/ </VirtualHost>
这个要用2个tomcat 能一个tomcat 解决吗
long416811 2015-08-14
  • 打赏
  • 举报
回复
感谢大家的回答,我最后用apache转发端口了 ,可是很是会显示出项目的端口。。。。。。
  • 打赏
  • 举报
回复
用apache代理转发吧,找到apache的匹配值文件,好像是httpd.conf文件,写个代理转发就ok了,部分代码 NameVirtualHost 101.200.204.103:80 <VirtualHost 101.200.204.103:80> ProxyPreserveHost On ProxyRequests Off ServerName www.jzmf.xyz ProxyPass / http://101.200.204.103:8080/ ProxyPassReverse / http://101.200.204.103:8080/ </VirtualHost> <VirtualHost 101.200.204.103:80> ProxyPreserveHost On ProxyRequests Off ServerName www.bjjzmf.xyz ProxyPass / http://101.200.204.103:8081/ ProxyPassReverse / http://101.200.204.103:8081/ </VirtualHost>
a_b_a_b_a_b_a_b 2015-08-12
  • 打赏
  • 举报
回复
你的那种配置可以,可能是你配置有问题了,你再百度一下试试吧。我配置成功过,具体忘了。用nginx是个不错的选择,现在我们都用这个了。
Small-Young 2015-08-12
  • 打赏
  • 举报
回复
<Host name="www.a.com" appBase="a"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>

<Host name="www.b.com" appBase="b"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>


内部机构

将项目放在root里面就ok了
long416811 2015-08-11
  • 打赏
  • 举报
回复
只能用Nginx这个来解决了么?我的那种办法是不可行还是有错误??
Inhibitory 2015-08-11
  • 打赏
  • 举报
回复
Tomcat前放一个Nginx或者Apache Server,在这里处理域名
mark小辉 2015-08-11
  • 打赏
  • 举报
回复
项目地址要直接能够加载、配置好之后还有重启猫
ab637800 2015-08-11
  • 打赏
  • 举报
回复
改Tomcat的server.xml <Context path="" docBase="项目路径" debug="0"/>

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧