iis与apache共用80端口方法集

因为只有一台服务器(win2003 server) 既需要在上面跑asp程序 又需要在上面跑php应用 又不想用iis跑php应用 还有就是不想把asp程序跑在apache上 就需要一个apache与iis共存的方案。

iis是windows2003 server自带的iis6.0

apache是apache2.2.8

首先当然是下载并安装apache

接着开始先把自动启动的iis服务器停下来,修改iis的端口为非80(比如8081)

再接着打开apache的httpd.conf文件开始配置

要让apache支持转发也就是做iis的代理那么就要先启用apache的代理模块:

#LoadModule proxy_module modules/mod_proxy.so

-->LoadModule proxy_module modules/mod_proxy.so

#LoadModule proxy_connect_module modules/mod_proxy_connect.so

-->LoadModule proxy_connect_module modules/mod_proxy_connect.so

#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so

-->LoadModule proxy_ftp_module modules/mod_proxy_ftp.so

#LoadModule proxy_http_module modules/mod_proxy_http.so

-->LoadModule proxy_http_module modules/mod_proxy_http.so

完成了代理模块的启用 那么我们开始配置虚拟主机

先包含httpd-vhosts.conf文件

#Include conf/extra/httpd-vhosts.conf

-->Include conf/extra/httpd-vhosts.conf

保存httpd.conf,打开httpd-vhosts.conf文件

开始配置虚拟机

NameVirtualHost *:80

<VIRTUALHOST *:80>

ServerAdmin b@b.com

ServerName www.b.com

DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs"

</VIRTUALHOST >

<VIRTUALHOST *:80>

ProxyPreserveHost On

ServerAdmin a@a.com

ServerName www.a.com

DefaultLanguage zh-CN

AddDefaultCharset GB2312

ProxyPass / http://www.a.com:8081/

ProxyPassReverse / http://www.a.com:8081/

</VIRTUALHOST>

配置完成并保存httpd-vhosts.conf

开始重启apache服务器和iis服务器

我们通过www.a.com访问过去就会看到iis的默认页面

通过www.b.com访问过去就可以看到it's work。

这样我们就实现了iis和apache共享80端口