jboss-as-7.1.1.Final:(三)域名绑定资源目录

在实际工作中我们可能会在同一台服务器上提供多个公共应用服务,应用程序可以是不同的项目,也可以是同一个项目下不同子目录资源或者二者都有,这样我们就需要将域名绑定到指定的资源目录。

1、不同项目

根据前面的文章:jboss-as-7.1.1.Final:(一)首页设置,我们将enable-welcome-root置为false,配置文件如下:

<subsystem xmlns="urn:jboss:domain:web:1.1" default-virtual-server="default-host" native="true">
            <connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http"/>
            <configuration>
                <jsp-configuration development="true"/>
            </configuration>
            <virtual-server name="default-host" enable-welcome-root="false">
                <alias name="localhost"/>
                <alias name="example.com"/>
            </virtual-server>
</subsystem>

然后在该subsystem下添加如下节点:

           <virtual-server name="YouthServerA" enable-welcome-root="false" default-web-module="ProjectA">
               <alias name="domainA.com"/>
           </virtual-server>
           <virtual-server name="YouthServerB" enable-welcome-root="false" default-web-module="ProjectB">
               <alias name="domainB.com"/>
           </virtual/-server>
           ......

项目ProjectA.warjboss-web.xml1文件如下配置:

<jboss-web>
    <context-root>/RootA</context-root>
    <virtual-host>YouthServerA</virtual-host>
</jboss-web

项目ProjectB.warjboss-web.xml文件如下配置:

<jboss-web>
    <context-root>/RootB</context-root>
    <virtual-host>YouthServerB</virtual-host>
</jboss-web

项目Project……

这样,我们就将domainA.com绑定项目PorojectA的目录/RootAdomainB.com绑定项目PorojectB的目录/RootB,……。

2、同一项目

这种情况下JBoss的设置已经无法帮助我们了,只能在代码中绑定域名,一般可以在两个地方进行控制:
1、项目首页,根据http请求头部中的主机信息决定是否跳转到其它不同的目录资源;
2、拦截http请求的代码部分,判断方法跟(1)是一样的,不同的是,前者使用javascript进行跳转,地址栏会有所改变,而后者可以进行转发,地址栏不变。
一般来说,域名对相应的资源目录是独占的。


  1. JBoss的web配置,放置在WebRoot/WEB-INF文件夹下。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值