环境:JBoss EAP 6.4.0
需求是这样的:有两个web 应用 test1.war 和 test2.war,要求test1应用只能在test1host主机名下访问,test2应用只能在test2host主机名下访问。
1. 修改standalone.xml,找到 web subsystem,增加两个 virtual server
<virtual-server name="webserver1" enable-welcome-root="false" default-web-module="test1.war">
<alias name="test1host"/>
<alias name="www.webserver1.org"/>
</virtual-server>
<virtual-server name="webserver2" enable-welcome-root="false" default-web-module="test2.war">
<alias name="test2host"/>
<alias name="www.webserver2.org"/>
</virtual-server>
2. 配置 test1.war 中的 jboss-web.xml 如下:
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web xmlns="http://www.jboss.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.jboss.org/schema/jbossas
http://www.jboss.org/schema/jbossas/jboss-web_7_2.xsd">
<!-- Configure usage of the security domain "other" -->
<context-root>/</context-root>
<virtual-host>webserver1</virtual-host>
</jboss-web>
3. 配置 test2.war 中的 jboss-web.xml 如下:
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web xmlns="http://www.jboss.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.jboss.org/schema/jbossas
http://www.jboss.org/schema/jbossas/jboss-web_7_2.xsd">
<!-- Configure usage of the security domain "other" -->
<context-root>/</context-root>
<virtual-host>webserver2</virtual-host>
</jboss-web>
4. 修改/etc/hosts,增加如下映射
127.0.0.1 test1host
127.0.0.1 test2host
127.0.0.1 www.webserver1.org
127.0.0.1 www.webserver2.org
5. 启动EAP Server,部署test1.war 和 test2.war
(1)访问 http://test2host:18080/,显示test1应用的页面内容。
(2)访问 http://www.webserver1.org:18080/,显示test1应用的页面内容。
(3)访问 http://test2host:18080/,显示test2应用的页面内容。
(4)访问 http://www.webserver2.org:18080/,显示test2应用的页面内容。
参考文献:
1. https://access.redhat.com/solutions/962103
2. http://jhouse0317.tistory.com/entry/What-is-virtualserver-and-alias-in-web-subsystem-in-jboss
需求是这样的:有两个web 应用 test1.war 和 test2.war,要求test1应用只能在test1host主机名下访问,test2应用只能在test2host主机名下访问。
1. 修改standalone.xml,找到 web subsystem,增加两个 virtual server
<virtual-server name="webserver1" enable-welcome-root="false" default-web-module="test1.war">
<alias name="test1host"/>
<alias name="www.webserver1.org"/>
</virtual-server>
<virtual-server name="webserver2" enable-welcome-root="false" default-web-module="test2.war">
<alias name="test2host"/>
<alias name="www.webserver2.org"/>
</virtual-server>
2. 配置 test1.war 中的 jboss-web.xml 如下:
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web xmlns="http://www.jboss.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.jboss.org/schema/jbossas
http://www.jboss.org/schema/jbossas/jboss-web_7_2.xsd">
<!-- Configure usage of the security domain "other" -->
<context-root>/</context-root>
<virtual-host>webserver1</virtual-host>
</jboss-web>
3. 配置 test2.war 中的 jboss-web.xml 如下:
<?xml version="1.0" encoding="UTF-8"?>
<jboss-web xmlns="http://www.jboss.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.jboss.org/schema/jbossas
http://www.jboss.org/schema/jbossas/jboss-web_7_2.xsd">
<!-- Configure usage of the security domain "other" -->
<context-root>/</context-root>
<virtual-host>webserver2</virtual-host>
</jboss-web>
4. 修改/etc/hosts,增加如下映射
127.0.0.1 test1host
127.0.0.1 test2host
127.0.0.1 www.webserver1.org
127.0.0.1 www.webserver2.org
5. 启动EAP Server,部署test1.war 和 test2.war
(1)访问 http://test2host:18080/,显示test1应用的页面内容。
(2)访问 http://www.webserver1.org:18080/,显示test1应用的页面内容。
(3)访问 http://test2host:18080/,显示test2应用的页面内容。
(4)访问 http://www.webserver2.org:18080/,显示test2应用的页面内容。
参考文献:
1. https://access.redhat.com/solutions/962103
2. http://jhouse0317.tistory.com/entry/What-is-virtualserver-and-alias-in-web-subsystem-in-jboss
没有评论:
发表评论