让IIS和Apache共同使用80端口,访问时候不需要加端口号的方法:
一,多个IP的情况 (假设有192.168.0.1和192.168.0.2两个IP)
1)IIS默认的情况下会占用所有IP的80端口,在cmd输入此命令:netsh http add iplisten ipaddress=192.168.0.1,让IIS只监听192.168.0.1的IP (针对IIS7版本,对于较低版本的IIS可以搜索其绑定的方法)
2)Apache监听指定的IP,在httpd.conf设置Listen 192.168.0.2:80
二,一个IP的情况
使用Apache的代理功能(效率低),先设置Apache监听80端口,IIS监听其他端口,如8080,然后在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
然后建立一个虚拟主机,将该域名的所有访问转向8080端口。
<VirtualHost *:80>
ServerName www.test.com
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
</VirtualHost>