IIS與apache共用80端口方法:
一:如何有多的公網IP。可在一個網卡上綁定多個IP來實現。
IIS6,多IP下共存,IIS爲192.168.0.1,apache爲192.168.0.2 原文地址
到2003的CD下的 support/tools/Support.cab。解壓出httpcfg.exe文件,COPY到windows/system32/目錄下,用法自己看幫助
命令行
綁定到某IP: httpcfg set iplisten -i 192.168.0.1
即命令使用IIS的只監聽指定的IP及端口
查看綁定: httpcfg query iplisten
刪除綁定: httpcfg delete iplisten -i 192.168.0.1
命令行
net stop Apache
net stop iisadmin
到2003的CD下的 support/tools/Support.cab。解壓出httpcfg.exe文件,COPY到windows/system32/目錄下,用法自己看幫助
命令行
綁定到某IP: httpcfg set iplisten -i 192.168.0.1
即命令使用IIS的只監聽指定的IP及端口
查看綁定: httpcfg query iplisten
刪除綁定: httpcfg delete iplisten -i 192.168.0.1
命令行
net stop Apache
net stop iisadmin
net START Apache
net START iiadmin
net START iiadmin
保證iis下的ip設置爲全局默認,Apache中httpconf設置listen 192.168.0.2:80,就應該可以兩個服務同時運行,相互不衝突了。
IIS的訪問地址爲http://192.168.0.1,Apache訪問地址爲http://192.168.0.2
IIS的訪問地址爲http://192.168.0.1,Apache訪問地址爲http://192.168.0.2
二:使用apache的代理功能.
IIS設置成81端口。
首選開啓apache代理功能。
在httpd.conf裏面,取消下面四行的註釋:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
然後設置虛擬主機,在httpd.conf設置如下:
NameVirtualHost xx.xx.xx.xx:80(偵聽公網IP和端口)
<VirttualHost *:80>
DocumentRoot x:/www/web1 (apache上非代理的站www.a.com)
ServerName www.a.com
</VirttualHost>
以下爲重點,將要代理的站
<VirttualHost *:80>
ServerName www.b.com (apache上代理的站www.b.com)
ProxyPass / http://www.b.com:81/
ProxyPa***everse / www.b.com:81/
</VirttualHost>
如何需要代理多個站,以此類推...
之後重啓APACHE 服務
OK。。打完收功