apache转发实现和iis共用80端口

  • 格式:doc
  • 大小:27.50 KB
  • 文档页数:2

最近做了一个php的网站,本地测试一切完好,但是放到服务器上发布的时候却出现了问题:由于服务器上已经有了一个asp的网站,所以80端口被iis占用了,apache无法启动服务,php网站也就无法发布。我在网上搜索各种资料,但是都没有成功。苦闷了三天之后终于发现密钥,现分享如下:

apache我用的是Apmserv5.2.6版本。

1、首先安装Apmserv5.2.6;

2、把原来的iis服务关闭,并把iis服务端口改成非80,比如8081端口;

3、再接着打开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。

4、打开httpd-vhosts.conf文件,开始配置虚拟机。

NameVirtualHost *:80

ServerAdmin b@(随便填)

ServerName

(apache网站的域名)

DocumentRoot "X:/APMServ5.2.6/www/htdocs/xxx" (apache网站根目录)

ProxyPreserveHost On

ServerAdmin a@ (随便填)

ServerName

(iis网站的域名)

DefaultLanguage zh-CN

AddDefaultCharset GB2312

ProxyPass / :8081/

ProxyPassReverse / :8081/ (iis网站域名加端口,这就是apache代理指向)

如果iis需要发布的网站不止一个那么后边可以继续添加其他网站

ProxyPreserveHost On

ServerAdmin c@ (随便填)

ServerName

(iis网站的域名)

DefaultLanguage zh-CN

AddDefaultCharset GB2312

ProxyPass / :8081/

ProxyPassReverse / :8081/ (iis网站域名加端口,这就是apache代理指向)

保存httpd-vhosts.conf文件。

5、重启apache服务器和iis服务器。

好了,大功告成,访问两个域名和都可以正常访问了。实现了apache和iis共享80端口,一个服务器实现两种平台共同发布网站。