这个不复杂,Apache本身就支持的,给你一个片段参考配置:<VirtualHost *:80>
    ServerAdmin [email protected]
    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>

解决方案 »

  1.   

    作为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
      

  2.   

    感谢两位的回复@ldh911
    动态增加TOMCAT的虚拟目录呢?是否可以解析一下你的配置@brightyq
    谢谢你提供的资料,我现在是想解决tomcat下动态增加虚拟目录的问题,应该如何使用?
      

  3.   

    ldh911的方法是否意味着我每个tomcate的虚拟目录context,都要加一个VirtualHost.
    然后重启apache呢?如何可以我在tomcat动态建一个名叫abc1的context,apache就可以把abc1.domain.com自动识别转向访问这个abc1的context。
      

  4.   

    直接设定多个主机就可以了[
    code=XML]<Proxy balancer://MyWebApp>
      BalancerMember ajp://server:8009/MyWebApp
    </Proxy>
    <Proxy balancer://MyWebApp>
      BalancerMember ajp://server:8019/MyWebApp
    </Proxy>[/code]
      

  5.   

    http://topic.csdn.net/u/20090106/08/8487b456-e907-4177-88ee-a82e7a13ffbf.html
    刚刚看了一下这个帖子,应该会对楼主有所帮助,别人遇到和你类似的问题
      

  6.   

    启动多个Tomcat,对服务器的内存要求就高了
      

  7.   

    要求暂时可以丢开。
    我一直纠结在于如何在二级域名动态解析后,指向Tomcat的Context。
      

  8.   

    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   我是映射到本机   
    这样不就可以做测试了 
      
      

  9.   

    晕。
    当配置到apache可以动态二级域名时,又不能让tomcat解析jsp。
    当配置到可以解析jsp,又不能把二级域名转为tomcat的上下文。偶的神呀,你快来打救我吧!
      

  10.   

    搜到 这个 http://neptune.iteye.com/blog/204602
    大致看了下还是靠谱的。 主要用urlrewriter来实现二级域名到具体tomcat访问路径的转换。
      

  11.   

    @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方式本来是最直观的,但却不能处理二级域名,为什么不这么弱智呢?
    难道我还有一些参数没看到!!!?
      

  12.   

    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几个虚拟站点都是这么搭建的,实在不知道你是啥问题。
      

  13.   

    @ldh911
    如何做动态二级域名,并指向Tomcat的虚拟目录?
    是不是我手工在apache加一个VirtualHost,tomcat加一个虚拟目录,然后重新一下apache,需要的话又重启一下tomcat?能否不重启,生产环境重启会有问题的。
      

  14.   

    挖个坟哦,最近也是一直在找这方面的资料,依据我的看法,我觉得如果想实现动态的话,那么就要脱离配置文件,如果想在容器中解决的话,可能需要针对tomcat进行开发了,还有一种比较简单的就是楼上有人说的url重写技术,可以在你的域名上添加一个泛解析*.domain.com <-> IP,然后在web应用中进行一下软处理的。仅是个人意见,如果楼主已解决还请告知解决方法, 学习学习,谢谢!