APMServ5.2.6和IIS共用80端口的调试实录
公司服务器一直都是采用PHP环境搭建的株洲都市在线论坛作为地方门户网站,今天接到部门要求,需要另外多加入一个正规的门户网站,论坛作为附属网站作为给网友交流之用,这次的服务器改动比较大,最为关键的是以前服务器只有Apache环境,目前公司开发出来的门户网站是采用的SQL2005+.NET2.0环境,但是又不愿意多增加一台服务器的情况下,我只有硬着头皮在一台服务器上实现Apache+IIS共用80端口。其他的SQL2005安装等等都好说,关键就是两个不同环境不同源码的网站要共同占用80端口,在百度查询了很多资料都是模凌两可,没有什么具体的解说,因为百度搜索到的都是Apache独立环境下的教程,而不是我目前服务器上APMServ5.2.6集成环境,所以有很大的出入,在研究了差不多4个小时的时间之后,总算是解决了这个问题,现在把我的解决方法公布出来,希望更多的人能在应对其它特殊环境下的应用。
先说说我配置之前服务器的配置环境,APMServ5.2.6集成PHP环境:
Apache 2.2.9
Nginx 0.7.19
NetBox 2.8 Build 4128
PHP 5.2.6
MiniPerl 5.8
Memcached 1.2.4
MySQL 5.1.28
MySQL 4.0.26
phpMyAdmin 2.11.9.2
eAccelerator 0.9.5.3
ZendOptimizer 3.3.3
OpenSSL 0.9.8h
第一步:安装好SQL2005数据库和IIS6.0(windows2003自带),将IIS的端口改为81端口(Apache环境以及占用了80端口);
第二步:配置Apache环境,让Apache能够作为代理访问81端口;
(1)修改“D:\APMServ5.2.6\Apache\conf”目录下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
如图:
http://blog.运维网.com/attachment/201111/012048344.jpg
注:另外检查httpd.conf文件下是否要包含httpd-vhosts.conf文件,如果下述文字前方有#,就把他去掉
[*]# Virtual hosts
[*]Include conf/extra/httpd-vhosts.conf
如图:
http://blog.运维网.com/attachment/201111/011623169.jpg
(2)接着在“D:\APMServ5.2.6\Apache\conf\extra”的目录下的httpd-vhosts.conf文件,添加apache和IIS下的虚拟主机信息:
IIS下的虚拟主机配置范例:
[*]
[*] ProxyPreserveHost On
[*] ServerAdmin 7740606@qq.com
[*] ServerName www.zzccoo.com
[*] ServerAlias zzccoo.com*.zzccoo.com
[*] DefaultLanguage zh-CN
[*] AddDefaultCharset GB2312
[*] ProxyPass / http://www.zzccoo.com:81/
[*] ProxyPa***everse / http://www.zzccoo.com:81/
[*]
apache下的虚拟主机配置范例:
[*]
[*] ServerAdmin 1047894@qq.com
[*] ServerName www.zhuzho.com
[*] ServerAlias zhuzho.com *.zhuzho.com
[*] DocumentRoot “d:/zhuzho”
[*]
记住IIS下应建立tcp端口为81的同一域名网站,才能实现转发。当然上述配置修改保存后,要重启IIS和Apache才能生效。
大家可以看我网站实例:
http://bbs.zzccoo.com/是株洲都市在线论坛,是以搭建在PHP环境上的80端口
http://www.zzccoo.com/和http://www.zzccoo.com:81/是搭建在IIS环境上的81端口,两个地址访问的是同一个页面
页:
[1]