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          [HTTP服務器]
Nginx 0.7.19          [HTTP服務器]
NetBox 2.8 Build 4128 [HTTP服務器+ASP腳本解釋引擎]
PHP 5.2.6             [PHP腳本解釋引擎]
MiniPerl 5.8          [Perl腳本解釋器]
Memcached 1.2.4       [key-value內存緩存系統]
MySQL 5.1.28          [MySQL數據庫服務器]
MySQL 4.0.26          [MySQL數據庫服務器]
phpMyAdmin 2.11.9.2   [MySQL數據庫在線管理工具]
eAccelerator 0.9.5.3  [PHP腳本加速引擎]
ZendOptimizer 3.3.3   [PHP腳本加速引擎]
OpenSSL 0.9.8h        [HTTPS(SSL)安全傳輸協議]

 

第一步:安裝好SQL2005數據庫和IIS6.0(windows2003自帶),將IIS的端口改爲81端口(Apache環境以及佔用了80端口);
 


第二步:配置Apache環境,讓Apache能夠作爲代理訪問81端口;

(1)修改“D:\APMServ5.2.6\Apache\conf”目錄下httpd.conf文件:

找到下面幾行文字,將前面面的#去掉,就可以打開代理功能

  1. LoadModule proxy_module modules/mod_proxy.so 
  2. LoadModule proxy_connect_module modules/mod_proxy_connect.so 
  3. LoadModule proxy_http_module modules/mod_proxy_http.so 
  4. LoadModule proxy_ftp_module modules/mod_proxy_ftp.so 

如圖:


注:另外檢查httpd.conf文件下是否要包含httpd-vhosts.conf文件,如果下述文字前方有#,就把他去掉

  1. # Virtual hosts 
  2. Include conf/extra/httpd-vhosts.conf

如圖:

httpd-vhosts.conf

 


(2)接着在“D:\APMServ5.2.6\Apache\conf\extra”的目錄下的httpd-vhosts.conf文件,添加apache和IIS下的虛擬主機信息:

IIS下的虛擬主機配置範例:

  1. <VirtualHost *:80> 
  2.     ProxyPreserveHost On 
  3.     ServerAdmin [email protected] 
  4.     ServerName www.zzccoo.com 
  5.     ServerAlias zzccoo.com  *.zzccoo.com 
  6.     DefaultLanguage zh-CN 
  7.     AddDefaultCharset GB2312 
  8.     ProxyPass / http://www.zzccoo.com:81/ 
  9.     ProxyPa***everse / http://www.zzccoo.com:81/ 
  10. </VirtualHost> 

apache下的虛擬主機配置範例:

  1. <VirtualHost *:80> 
  2.     ServerAdmin [email protected] 
  3.     ServerName www.zhuzho.com 
  4.     ServerAlias zhuzho.com *.zhuzho.com 
  5.     DocumentRoot “d:/zhuzho” 
  6. </VirtualHost> 


    記住IIS下應建立tcp端口爲81的同一域名網站,才能實現轉發。當然上述配置修改保存後,要重啓IIS和Apache才能生效。

大家可以看我網站實例:

http://bbs.zzccoo.com/  是株洲都市在線論壇,是以搭建在PHP環境上的80端口

http://www.zzccoo.com/http://www.zzccoo.com:81/是搭建在IIS環境上的81端口,兩個地址訪問的是同一個頁面

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章