当前位置:编程问答 > IIS >

让IIS和Apache共同使用80端口的方法

如果我们在一台服务器即使用IIS作为WEB服务器,同时又想使用Apache作为WEB服务器,那么如何来公用80端口呢?

我们可以使用单IP地址来实现,但是在性能上有损失:

将apache设为使用80端口,IIS使用其它端口,比如81,然后将apache作为IIS的代理。速度有影响.
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

Include conf/extra/httpd-vhosts.conf

httpd-vhosts.conf中建立虚拟主机

<VirtualHost *:80>
ServerName www.zzzyk.com
DocumentRoot "c:/Inetput/HeyVPN.com"
</VirtualHost>

<VirtualHost *:80>
ServerName ***
ProxyPass / http://localhost:81/
ProxyPassReverse / http://localhost:81/
</VirtualHost>

如上所述配置,我们访问www.zzzyk.com时将使用Apache作为web服务器,访问***将使用IIS作为web服务器

 

我们可以使用双IP地址来实现,接下来具体讲讲怎么实现:

1>修改Apache的httpd.conf文件,将“Lisen 80”改为“Listen IP:80”

2>按照下图进行修改,修改前需要一个httpcfg.exe文件,这个文件在windows2003安装碟中,具体路径为:“support/tools/Support.cab/httpcfg.exe”

OK,搞定!


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 Apache2
net stop iisadmin /y
net START Apache2
net START w3svc
保证iis下的ip设置为全局默认,Apache中httpconf设置listen 192.168.0.2:80,就应该可以两个服务同时运行,相互不冲突了。
IIS的访问地址为http://192.168.0.1,Apache访问地址为http://192.168.0.2

Apache
IIS
Nginx
Tomcat
如果你遇到什么编程难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,