论坛风格切换切换到宽版
  • 11333阅读
  • 5回复

JBoss中一个项目映射多个域名的实现方法 [复制链接]

上一主题 下一主题
离线sunsky
 

发帖
3417
铜币
32543
威望
1257
只看楼主 倒序阅读 使用道具 楼主  发表于: 2011-06-18
— 本帖被 admin 执行置顶操作(2011-09-27) —

首先假设阅读本文的读者朋友已经申请了多个域名,而且这多个域名都指向同一个IP。另外还假设你的服务器只开放一个80端口用来侦听浏览器等的请求。


--因为比较简单,本文对于1个IP多端口映射多个域名的实现方法就不做介绍了。


在上面的假设下,你需要让你的服务器根据浏览器的请求,把不同域名里的正确的网页内容发送回去。


怎么办呢?从原理上讲,你的服务器必须支持这样的设置:能够根据域名来确定调用哪个服务。


在JBoss里,就支持这种设置。下面我们来介绍:










OS Server
Windows Or Linuxjboss-4.0.1


1,在你的项目里的 WEB-INF\下新建文件jboss-web.xml,类似如下内容:


<?xml version='1.0' encoding='UTF-8' ?>


<!DOCTYPE jboss-web


     PUBLIC "-//JBoss//DTD Web Application 2.3V2//EN"


     "http://www.jboss.org/j2ee/dtd/jboss-web_3_2.dtd">


<jboss-web>


<context-root>/</context-root>


<virtual-host>www.你的域名.com</virtual-host>


</jboss-web>


告诉JBoss你的WEB应用为 www.你的域名.com。


有几个这样的WEB应用则分别为其建立几个这样的文件配置。


2,修改 JBOSS_HOME\server\...\deploy\jbossweb-tomcatxx.sar\server.xml


找到:<Engine name…


在其中追加以下内容:


         <Host name="www.你的域名.com"


             autoDeploy="false" deploy deployXML="false">


          


             <Alias>你的域名.com</Alias>


             <Alias>*.你的域名.com</Alias>


             <!-- Access logger -->


             <!--             -->


             <Valve className="org.apache.catalina.valves.AccessLogValve"


                 prefix="yourdomain_access_log." suffix=".log"


                 pattern="common" directory="${jboss.server.home.dir}/log"


                 resolveHosts="true" />


             <!-- Default context parameters -->


             <DefaultContext cookies="true" crossC override="true"/>


         </Host>


注意:这里的Host name属性的值好像要跟DNS里的域名设置相匹配(Windows环境下不经由DNS的时候,跟hosts里相应的值一样就行),当然也要跟jboss-web.xml里virtual-host值一样了。


3,重新启动JBOSS


4,在浏览器输入:http://www.你的域名.com/ 加以确认


用这种方法可以为不同的域名对应不同的war,并且可以同时为root目录


注意


--------------


如果你的ROUTER不支持访问自己IP里的域名,在内部网络访问的情况下,你需要修改你的操作系统的配置。在Windows环境下则修改:


C:\WINDOWS\system32\drivers\etc\hosts,Linux环境同样修改/etc/hosts


内容如下:


127.0.0.1       localhost


127.0.0.1       www.你的域名.com


127.0.0.1       你的域名.com


127.0.0.1       *.你的域名.com


告诉你的浏览器,使其碰到以上域名时,不经过DNS解析。

离线网络天下

发帖
1528
铜币
22451
威望
510
只看该作者 沙发  发表于: 2012-02-05
谢谢楼主
离线缘份天空

发帖
2673
铜币
26498
威望
772
只看该作者 板凳  发表于: 2012-02-14
多谢LZ,我按照上面的操作可以了
离线tkuss

发帖
24
铜币
23
威望
0
只看该作者 地板  发表于: 2012-06-22
此贴有意思~
离线lcpey

发帖
1
铜币
1
威望
0
只看该作者 4楼 发表于: 2012-10-03
改.成.绩聪明人选717054639改成.绩.挂科服务出国GPA服务美国TOP50不是问题后付款








改.成.绩聪明人选326241077改成.绩.挂科服务出国GPA服务美国TOP50不是问题后付款
离线北纬40kxk

发帖
13
铜币
13
威望
0
只看该作者 5楼 发表于: 2012-11-03
不太了解这个的,觉得不错
快速回复
限100 字节
批量上传需要先选择文件,再选择上传
 
上一个 下一个