apache+tomcat 动态二级域名问题

liuyxit 2012-07-21 04:33:31
有域名www.domain.com现时已用于tomcat的root主应用
现在想加abc.domain.com指向tomcat的abc虚拟目录
由于类似abc的项目比较多,比如abd,abe...
现在想用apache + tomcat搭建一个环境,可以让用户
输入www.domain.com到tomcat虚拟目录为root的主应用
输入abc.domain.com到tomcat虚拟目录为abc的应用
输入abd.domain.com到tomcat虚拟目录为abd的应用
其它类同。

由于现在是用本机调试,请同学们详细指导一下,谢谢
...全文
616 19 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
teemai 2014-01-16
  • 打赏
  • 举报
回复
楼上能不能不要挖坟。。2012年的帖子,我了个去。。看楼主都不结贴,你觉得他会出来告知你解决方法吗?
引用 18 楼 xb278xb 的回复:
挖个坟哦,最近也是一直在找这方面的资料,依据我的看法,我觉得如果想实现动态的话,那么就要脱离配置文件,如果想在容器中解决的话,可能需要针对tomcat进行开发了,还有一种比较简单的就是楼上有人说的url重写技术,可以在你的域名上添加一个泛解析*.domain.com <-> IP,然后在web应用中进行一下软处理的。 仅是个人意见,如果楼主已解决还请告知解决方法, 学习学习,谢谢!
xb278xb 2014-01-16
  • 打赏
  • 举报
回复
挖个坟哦,最近也是一直在找这方面的资料,依据我的看法,我觉得如果想实现动态的话,那么就要脱离配置文件,如果想在容器中解决的话,可能需要针对tomcat进行开发了,还有一种比较简单的就是楼上有人说的url重写技术,可以在你的域名上添加一个泛解析*.domain.com <-> IP,然后在web应用中进行一下软处理的。 仅是个人意见,如果楼主已解决还请告知解决方法, 学习学习,谢谢!
liuyxit 2012-08-24
  • 打赏
  • 举报
回复
完了,这个问题可能真得很难找到答案
liuyxit 2012-08-02
  • 打赏
  • 举报
回复
动态,需要动态!
liuyxit 2012-08-01
  • 打赏
  • 举报
回复
@ldh911
如何做动态二级域名,并指向Tomcat的虚拟目录?
是不是我手工在apache加一个VirtualHost,tomcat加一个虚拟目录,然后重新一下apache,需要的话又重启一下tomcat?

能否不重启,生产环境重启会有问题的。
liuyxit 2012-07-27
  • 打赏
  • 举报
回复
要求暂时可以丢开。
我一直纠结在于如何在二级域名动态解析后,指向Tomcat的Context。
MiceRice 2012-07-27
  • 打赏
  • 举报
回复
ProxyPass 本来就不是用来处理二级域名的,它主要负责反向代理。。。

二级域名的标准处理方法,就是用:
<VirtualHost *:80>
ServerName abc.domain.com
ServerAlias www.abc.domain.com

<VirtualHost *:80>
ServerName xyz.domain.com
ServerAlias www.xyz.domain.com


这里面再用:ProxyPass 做反向代理,我这里20几个虚拟站点都是这么搭建的,实在不知道你是啥问题。
liuyxit 2012-07-27
  • 打赏
  • 举报
回复
@handsome_huxiulei
要的是动态二级域名,如果在server.xml改,又是重启tomcat,达到不效果。

@nickycheng
其实我也是按照差不多的文章配置过。
可以实现:
www.domain.com/访问ROOT上下文
www.domain.com/abc访问abc上下文
但http://abc.domain.com死活指向www.domain.com,看过rewrite的日志。
解析到文件路径是正确的,但不知apache做rewrite后交给tomcat时,为什么又转到了ROOT应用。

ProxyPass方式本来是最直观的,但却不能处理二级域名,为什么不这么弱智呢?
难道我还有一些参数没看到!!!?
nickycheng 2012-07-27
  • 打赏
  • 举报
回复
搜到 这个 http://neptune.iteye.com/blog/204602
大致看了下还是靠谱的。 主要用urlrewriter来实现二级域名到具体tomcat访问路径的转换。
liuyxit 2012-07-27
  • 打赏
  • 举报
回复
晕。。。。
当配置到apache可以动态二级域名时,又不能让tomcat解析jsp。
当配置到可以解析jsp,又不能把二级域名转为tomcat的上下文。

偶的神呀,你快来打救我吧!
handsome_huxiulei 2012-07-27
  • 打赏
  • 举报
回复
tomcat下的server.xml不是可以配置多个 host么

<Host name="www.aa.com" appBase=""
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context docBase="F:/xx/xx" path="" reloadable="true" />
</Host>

<Host name="bb.xx.com" appBase=""
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context docBase="F:/aa/aa" path="" reloadable="true" />
</Host>


然后再C:\Windows\System32\drivers\etc 下的hosts文件中 做映射
如: 127.0.0.1 www.aa.com 我是映射到本机


这样不就可以做测试了
EverWHL 2012-07-26
  • 打赏
  • 举报
回复
http://topic.csdn.net/u/20090106/08/8487b456-e907-4177-88ee-a82e7a13ffbf.html
刚刚看了一下这个帖子,应该会对楼主有所帮助,别人遇到和你类似的问题
EverWHL 2012-07-26
  • 打赏
  • 举报
回复
直接设定多个主机就可以了[
code=XML]<Proxy balancer://MyWebApp>
  BalancerMember ajp://server:8009/MyWebApp
</Proxy>
<Proxy balancer://MyWebApp>
  BalancerMember ajp://server:8019/MyWebApp
</Proxy>[/code]
liuyxit 2012-07-26
  • 打赏
  • 举报
回复
ldh911的方法是否意味着我每个tomcate的虚拟目录context,都要加一个VirtualHost.
然后重启apache呢?

如何可以我在tomcat动态建一个名叫abc1的context,apache就可以把abc1.domain.com自动识别转向访问这个abc1的context。
liuyxit 2012-07-26
  • 打赏
  • 举报
回复
感谢两位的回复

@ldh911
动态增加TOMCAT的虚拟目录呢?是否可以解析一下你的配置

@brightyq
谢谢你提供的资料,我现在是想解决tomcat下动态增加虚拟目录的问题,应该如何使用?


ace62 2012-07-26
  • 打赏
  • 举报
回复
启动多个Tomcat,对服务器的内存要求就高了
brightyq 2012-07-21
  • 打赏
  • 举报
回复
作为web服务器,apache本身可以配置。
Apache虚拟主机指南:
http://wiki.ubuntu.org.cn/Apache%E8%99%9A%E6%8B%9F%E4%B8%BB%E6%9C%BA%E6%8C%87%E5%8D%97
MiceRice 2012-07-21
  • 打赏
  • 举报
回复
楼主人嘞? 这个是我们生产系统实际使用的,如果有问题及早回复啊。。。
MiceRice 2012-07-21
  • 打赏
  • 举报
回复
这个不复杂,Apache本身就支持的,给你一个片段参考配置:

<VirtualHost *:80>
ServerAdmin xxxooo@gmail.com
ServerName abc.domain.com
ServerAlias www.abc.domain.com
DocumentRoot /opt/software/apache2/redirect/abc
ErrorLog logs/abc-error_log
CustomLog logs/abc-access_log common

RewriteEngine On
RewriteOptions inherit

ProxyPass / http://localhost:8080/abc/
ProxyPassReverse / http://localhost:8080/abc/
</VirtualHost>

81,122

社区成员

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

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