1、部署web应用
直接把war包仍到${JBOSS_HOME}/server/default/deploy目录下就ok了。
2、apache转发到jboss
把mod_jk配置好就可以转发到jboss了
3、apache虚拟主机转发到jboss
设置apache虚拟主机
<VirtualHost *:80>
ServerName shop.my.com
ErrorLog "logs/shop.my.com-error.log"
CustomLog "logs/shop.my.com-access.log" common
JkMount /* loadbalancer
</VirtualHost>
<VirtualHost *:80>
ServerName shop2.my.com
ErrorLog "logs/shop2.my.com-error.log"
CustomLog "logs/shop2.my.com-access.log" common
JkMount /* loadbalancer
</VirtualHost>
这样可以让所有访问主机shop.my.com都被转发给jboss
这样问题又来了,怎样让jboss也支持多个主机?看下点
4、在jboss中配置虚拟主机
直接在上下文的WEB-INF下创建个jboss-web.xml,内容是:
<jboss-web>
<context-root>/</context-root>
<virtual-host>shop.my.com</virtual-host>
</jboss-web>
即可把当前上下文设置为虚拟主机shop.my.com
5、把jboss的web应用设在jboss目录外
在{$JBOSS_HOME}/server/default/deploy/jboss-web.deployer/server.xml中添加虚拟目录
6、把jboss虚拟主机的web应用放在{$JBOSS_HOME}外
在{$JBOSS_HOME}/server/default/deploy/jboss-web.deployer/server.xml中添加虚拟目录中添加虚拟主机,再设置虚拟主机的虚拟目录。比如
<!-- 虚拟主机-->
<Host name="shop.my.com" >
<!-- 虚拟主机别名 -->
<!--
<Alias>shopn.my.com</Alias>
-->
<!-- Default context parameters -->
<DefaultContext cookies="true" crossContext="true" override="true" />
<!-- 设置虚拟目录 -->
<!--
<Context path="/" docBase="D:\\WebApplication1.war" debug="1" reloadable="true" override="true" crossContext="true"/>
-->
</Host>