//前兩天幫朋友配置服務器,找到的這篇文章,很早很早以前我是用NAT做端口轉發完成的相同功能。相比之下,還是這個解決方法最好!
這兩天在服務器上同時部署了Tomcat和IIS,由于兩個Web server沒有任何關系,不想采用集成的方法,因為通過IIS分發請求到Tomcat性能肯定有影響,而且還是按URL pattern來轉發,感覺很不爽。
碰巧服務器上有兩個網卡連到兩個不同的網絡,所以決定用雙IP來解決,方法是讓Tomcat和IIS分別只監聽不同的IP上的80端口,這樣就可以相安無事,同時啟動兩個Web Server。
假定兩個IP為:192.168.89.133, 10.200.200.200。讓Tomcat監聽192.168.89.133, IIS監聽10.200.200.200
方法如下:
1、在TOMCAT的server.xml文件的Connector 節點上,加上address="192.168.89.133",如:
<Connector port="80" maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" address="192.168.89.133" />
注:如果是Apache即httpconf設置listen 192.168.89.133:80
2、在Windows2003操作系統中,經如下設置,使IIS只監聽一個ip
到WIN2003的CD下的 support/tools/Support.cab。解壓出httpcfg.exe文件,COPY到windows/system32/目錄下,
綁定IIS到10.200.200.200,即命令使用IIS的只監聽指定的IP及端口,如:httpcfg set iplisten -i 10.200.200.200
附其余兩個命令:(沒有設定綁定的話,查詢綁定會失敗)
查看綁定: httpcfg query iplisten
刪除綁定: httpcfg delete iplisten -i 10.200.200.200
3、重新啟動機器,保證iis下的ip設置為全局默認(不明,好像重啟即可)
net stop iisadmin /y
net START w3svc
OK,此時可以分別用IP來訪問Tomcat和IIS了, 如果需要本機用域名訪問,可以在hosts文件上加上兩行映射。
如果要映射域名,申請兩上不同的域名映射到這兩個IP上即可。
來源:http://hi.baidu.com/%5Fmix%5F/blog/item/ea4e32b34843bba1d9335ae9.html