碰巧服务器上有两个网卡连到两个不同的网络,所以决定用双IP来解决,方法是让Tomcat和IIS分别只监听不同的IP上的80端口,这样就可以相安无事,同时启动两个Web Server。
假定两个IP为:10.3.95.46,10.3.95.47(工大内网都是这样IP)。让Tomcat监听10.3.95.46, IIS监听10.3.95.47
方法如下:
1、在TOMCAT的server.xml文件的Connector 节点上,加上address="10.3.95.46",如:
<Connector port="80" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" address="10.3.95.46" />
注:如果是Apache即httpconf设置listen 10.3.95.46:80
2、在Windows2003操作系统中,经如下设置,使IIS只监听一个ip
到WIN2003的CD下的 support/tools/Support.cab。解压出httpcfg.exe文件,COPY到windows/system32/目录下,
绑定IIS到10.3.95.47,即命令使用IIS的只监听指定的IP及端口,如:httpcfg set iplisten -i 10.3.95.47
附其余两个命令
查看绑定: httpcfg query iplisten
删除绑定: httpcfg delete iplisten -i 10.3.95.47
3、重新启动机器,保证iis下的ip设置为全局默认(不明,好像重启即可)
net stop iisadmin /y
net START w3svc
OK,此时可以分别用IP来访问Tomcat和IIS了, 如果需要本机用域名访问,可以在hosts文件上加上两行映射。
如果要映射域名,申请两上不同的域名映射到这两个IP上即可。