亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > Apache > 正文

Apache下的虛擬主機設置

2024-08-27 18:12:06
字體:
來源:轉載
供稿:網友

一、WWW服務器虛擬主機原理

WWW服務器虛擬主機是指使用一臺物理機器,充當多個主機名的WWW服務器。比如由一臺機器同時提供http://www.company1.com, http://www.company2.com 等的WWW服務,而瀏覽這些WWW站點的用戶感覺不到這種方式下跟由不同的機器提供不同的服務有什么差別。

使用WWW虛擬主機的好處在于,一些小規模的網站,通過跟其他網站共享同一臺物理機器,可以減少系統的運行成本,并且可以減少管理的難度。另外,對于個人用戶,也可以使用這種虛擬主機方式來建立有自己獨立域名的WWW服務器,目前國內有很多公司都提供這種免費的服務。

WWW虛擬主機有兩種工作方式:

1.1 基于IP地址的虛擬主機方式

這種方式下,不同的主機名解析到不同的IP地址,提供虛擬主機服務的機器上同時設置有這些IP地址。服務器根據用戶請求的目的IP地址來判定用戶請求的是哪個虛擬主機的服務,從而進一步的處理。
缺點:基于IP地址的虛擬主機方式需要在提供虛擬主機服務的機器上設立多個IP地址,既浪費了IP地址,又限制了一臺機器所能容納的虛擬主機數目。因此這種方式越來越少使用。但是,這種方式是早期使用的HTTP 1.0協議唯一支持的虛擬主機方式。

1.2 基于主機名的虛擬主機方式

由于基于IP地址的虛擬主機方式有如上的缺點,HTTP 1.1協議中增加了對基于主機名的虛擬主機的支持。具體說,當客戶程序向WWW服務器發出請求時,客戶想要訪問的主機名也通過請求頭中的“Host:”語句傳遞給WWW服務器。比如,www.company1.com, www.company2.com 都對應于同一個IP地址(即由同一臺機器來給這兩個虛擬域名提供服務),客戶程序要存取http://www.company1.com/index.html時,發出的請求頭中包含有如下的內容:
GET /index.html HTTP/1.1
Host: www.company1.com
…..

WWW服務器程序接收到這個請求后,可以通過檢查“Host:”語句,來判定客戶程序請求是哪個虛擬主機的服務,然后再進一步的處理。

優點:提供虛擬主機服務的機器上只要設置一個IP地址,理論上就可以給無數多個虛擬域名提供服務,占用資源少,管理方便。目前基本上都是使用這種方式來提供虛擬主機服務。
缺點:在早期的HTTP 1.0版本下不能使用。實際上現在使用的瀏覽器基本上都支持基于主機名的虛擬主機方式。

二、Apache服務器下的虛擬主機設置技術

2.1 Apache WWW服務器簡介

Apache WWW服務器是目前Internet上使用最廣的WWW服務器軟件。通過靈活的配置,它可以完成幾乎您想得到的功能。本文主要介紹在Apache 下設置各種虛擬主機的方法。

2.2 Apache WWW服務器下基于IP地址的虛擬主機設置

使用這種虛擬主機方式,首先要在服務器上為每個虛擬主機單獨設置一個IP地址。這些IP地址可以通過增加多個網卡或者在一個網卡上設立多個IP地址來完成。有了多個IP地址后,可以采用以下兩種方式之一來設置Apache:

2.2.1 為每個虛擬主機運行一份Apache

采用這種方式,每一份Apache程序可以以單獨的用戶運行,因此各個虛擬主機之間互不影響。設置這種虛擬主機時,只要為每一份Apache設置一套配置文件就可以了,唯一需要注意的是:必須使用“Listen”語句,強制每一份Apache 僅僅在屬于“自己”的IP地址上接收服務請求。

優點:各個虛擬主機之間互不干擾,安全性高。

缺點:占用系統資源較多。

2.2.2多個虛擬主機共享同一份Apache

采用這種方式,各個虛擬主機共享同一份Apache,因此各個虛擬主機之間有一定的影響,尤其是執行CGI程序時,可能會帶來一些嚴重的安全問題。設置這種虛擬主機時,只要為每一個虛擬主機設置類似如下的信息即可
<VirtualHost www.company1.com>;
DocumentRoot /home/company1

</VirrualHost>;

優點:占用系統資源比上一種方式少。

缺點:安全性低,每個虛擬主機仍然需要占用一個IP地址。

2.3 Apache WWW服務器下簡單的基于名字的虛擬主機設置

這種方式下,各個虛擬主機共享同一份Apache,因此有CGI程序運行時,安全性也不高。設置這種虛擬主機時,只要為每一個虛擬主機設置類似如下的信息即可

NameVirtualHost 111.222.33.44 ; 在這個IP地址接收虛擬主機的服務

  1. <VirtualHost 111.222.33.44>;  
  2. ServerName www.company1.com  
  3. DocumentRoot /www/company1  
  4. </VirtualHost>;  
  5. <VirtualHost 111.222.33.44>;  
  6. ServerName www.company2.com  
  7. DocumentRoot /www/company2  
  8. </VirtualHost>

優點:只要一個IP地址就可以提供大量的虛擬主機服務。

缺點:安全性差。維護這些虛擬主機時需要更改配置文件,并且需要重新啟動Apache進程才能起作用。因此不適合進行大規模的虛擬主機服務。

2.4 Apache WWW服務器下基于名字的大規模虛擬主機設置

所謂大規模虛擬主機,是指能夠提供非常多的虛擬主機服務,比如能提供超過數十萬個域名的虛擬主機服務。如果使用以上討論的方法,是很難完成的。實現這種服務的一種方式是利用Apache 功能強大的URL重寫功能。下面以一個實例來說明這種方式。

2.4.1 Apache中URL重寫功能

Apache 1.2及以后版本都有URL重寫(Rewrite)功能。簡單的說,URL重寫功能就是在Apache接收到請求后,在處理的過程中能根據預先設定的規則,對請求中的URL進行修改。這些規則主要由正規表達式組成。重寫依賴于輸入的URL、各種服務器端環境變量、HTTP請求頭中的內容、時間,甚至可以通過外部的程序來使用數據庫中的信息來幫助重寫。

URL重寫功能非常強大,通過URL重寫,可以使Apache完成異常復雜的功能。當然,URL重寫功能本身也比較復雜,關于URL重寫功能的詳細說明可以參看Apache 的隨機文檔。

2.4.2 使用Apache中URL重寫功能實現基于名字的大規模虛擬主機設置

假設機器www.home.com提供名字形如abcde.home.com、hijk.home.com等的大規模虛擬主機服務。其中虛擬主機名必須是字母或數字,并且長度至少為3。為了防止一個目錄下文件或子目錄太多而對性能產生很大的負面影響,對用戶的目錄按照名字進行分級劃分,如虛擬主機abcde.home.com的相關文件存放在目錄/member/ab/de/abcde下面。其中“ab”、“de”分別是“abcde”的前邊兩個字符和最后兩個字符。當用戶請求http://abcde.home.com時,系統應該返回/member/ab/de/abcde下面的文件。下面是為了完成這種功能需要進行的設置:

1. 對域名服務器的設置

假設www.home.com的IP地址為202.103.190.57,在域名服務器DNS的home.com數據文件中增加一行:
--------------------------------------------------------------------------------
* IN A 202.103.190.57
--------------------------------------------------------------------------------
這樣,所有 *.home.com的IP地址都會被解析為202.103.190.57,就沒有必要為各個虛擬主機分別進行設置。

2. 對Apache的設置

首先使用命令“httpd -l”檢查mod_rewrite模塊是否已經編譯到Apache中,如果沒有,重新編譯Apache。然后在Apache的配置文件httpd.conf中增加如下語句(其中以“#”開頭的為注釋):

  1. #禁止使用機器的正式名  
  2. UseCanonicalName off  
  3. #使能重寫功能  
  4. RewriteEngine on  
  5. RewriteMap lowercase int:tolower  
  6. # 為安全考慮,對CGI程序不進行重寫  
  7. RewriteCond %{REQUEST_URI} !^/cgi-bin/  
  8. # 對www.home.com不重寫,其他的重寫  
  9. RewriteCond ${lowercase:%{HTTP_HOST}} !^www.home.com(.*)$  
  10. RewriteCond ${lowercase:%{HTTP_HOST}} ^[a-z0-9-]+.home.com(.*)$  
  11. # 首先把機器名改為小寫,添加到請求的文件路徑前,并繼續處理  
  12. RewriteRule ^(.+) ${lowercase:%{HTTP_HOST}}$1 [C]  
  13. # 重寫請求  
  14. RewriteRule ^([a-z0-9])([a-z0-9])([a-z0-9]).home.com([.]*)/(.*) /member/$1$2/$2$3/$1$2$3/$5  
  15. RewriteRule ^([a-z0-9])([a-z0-9])([a-z0-9]*)([a-z0-9])([a-z0-9]).home.com([.]*)/(.*) /member/$1$2/$4$5/$1$2$3$4$5/$7 

優點:只要一個IP地址就可以提供大量的虛擬主機服務,維護方便。

缺點:安全性低。上例為了增強安全性,禁止運行用戶自己的CGI程序。

2.5 Apache WWW服務器下的重定向虛擬主機設置

重定向虛擬主機是指僅僅提供重定向功能,而不實際存放用戶主頁數據的虛擬主機。比如,某站點有多個鏡像服務器,假設為www1.user.com、www2.user.com,…wwwn.user.com。這些服務器放在不同的網絡上,分布于各地的客戶訪問這些服務器的速度也互不相同。而站點www.home.com通過虛擬域名user.home.com為這些鏡像的服務器提供虛擬主機服務。當客戶訪問http://user.home.com時,www.home.com根據用戶的IP地址、收集到的網絡拓撲結構信息,把客戶重定向到對該客戶來說訪問速度最快的站點。

重定向虛擬主機服務也可以通過使用URL重寫功能來完成。這里僅給出簡單的重寫規則:

RewriteRule ^([a-z0-9]+).home.com([.]*)/(.*) /www/cgi-bin/nph-redirect.cgi/$1/$3 [T=application/x-httpd-cgi,L]

其中,nph-redirect.cgi為一個CGI程序,為了實現自動重定向,它需要產生完整的HTTP 應答頭信息。該程序通過環境變量PATH_INFO得到用戶請求的URL,通過環境變量REMOTE_ADDR得到用戶的IP地址,并根據網絡拓撲情況生成重定向信息,返回給客戶。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
中文.日本.精品| 欧美激情视频一区二区三区不卡| 92看片淫黄大片欧美看国产片| 午夜精品在线视频| 欧美性高潮床叫视频| 国产精品亚洲激情| 日韩在线视频二区| 国产丝袜视频一区| 成年无码av片在线| 国产脚交av在线一区二区| 欧美激情一区二区三区久久久| 两个人的视频www国产精品| 精品国产鲁一鲁一区二区张丽| 国产不卡视频在线| 日本久久久久久久久| 日本亚洲精品在线观看| 亚洲色图13p| 国产丝袜视频一区| 亚洲欧洲第一视频| 日韩成人在线观看| 欧美老女人在线视频| 国产成人综合av| 亚洲精品久久久一区二区三区| 久久精品电影一区二区| 最好看的2019的中文字幕视频| 精品福利免费观看| 日韩在线观看成人| 国产免费亚洲高清| 欧美在线性视频| 欧美激情网站在线观看| 日韩精品久久久久| 亚洲欧美日韩国产成人| 久久久免费精品视频| 韩国精品美女www爽爽爽视频| 午夜精品一区二区三区视频免费看| 日韩欧美aⅴ综合网站发布| 亚洲在线免费视频| 社区色欧美激情 | 欧美精品videos| 国产精品中文字幕在线观看| 欧美成年人在线观看| 亚洲最大福利视频| 国产亚洲一区二区在线| 日韩欧美在线视频观看| 国产成人亚洲综合91精品| 成人午夜黄色影院| 欧美裸体xxxx| 欧美精品videos| 欧美大尺度激情区在线播放| 国产99视频精品免视看7| 亚洲91精品在线观看| 深夜福利亚洲导航| 日韩一区二区精品视频| 福利微拍一区二区| 精品国产电影一区| 国产精品视频资源| 久久久99免费视频| 欧美成人免费在线视频| 91理论片午午论夜理片久久| 国产精品99导航| 国产69久久精品成人| 中文字幕视频一区二区在线有码| 成人av在线网址| 日韩av成人在线观看| 国产在线精品成人一区二区三区| 久久夜色精品国产亚洲aⅴ| 欧美激情性做爰免费视频| 国产精品第3页| 全球成人中文在线| 久久久99久久精品女同性| 日韩亚洲一区二区| 日韩精品在线观看一区| 亚洲精品福利视频| 欧美激情第三页| 亚洲最大福利视频网站| 午夜精品一区二区三区在线| 亚洲欧洲在线观看| 久久久精品一区二区三区| 在线观看久久av| 日韩黄色高清视频| 欧美大秀在线观看| 亚洲97在线观看| 国产日韩精品视频| 欧美高清电影在线看| 欧美在线欧美在线| 精品激情国产视频| 一色桃子一区二区| 在线成人激情黄色| 高清日韩电视剧大全免费播放在线观看| 国产精品18久久久久久麻辣| 久久久人成影片一区二区三区观看| 亚洲黄色免费三级| 精品久久久久久亚洲精品| 在线观看欧美视频| 亚洲美腿欧美激情另类| 欧美另类高清videos| 国产成人a亚洲精品| 26uuu亚洲国产精品| 激情成人中文字幕| 欧美成在线观看| 热久久视久久精品18亚洲精品| 欧美精品少妇videofree| 亚洲欧洲在线看| 国产精品一久久香蕉国产线看观看| 国产一区二区三区在线播放免费观看| 欧美xxxx18国产| 黑人巨大精品欧美一区二区三区| 日韩av手机在线看| 亚洲欧美在线播放| 亚洲最新av在线| 国产一区二区三区视频在线观看| 国产精品激情自拍| 国产精品欧美一区二区| 北条麻妃一区二区三区中文字幕| 国产精品免费视频xxxx| 成人欧美一区二区三区黑人孕妇| 欧美亚洲视频在线观看| 国产精品第10页| 亚洲一级黄色片| 日韩av三级在线观看| 成人黄色免费网站在线观看| 国产精品久久久久久久久久久久久久| 欧美日韩国产丝袜美女| 欧美电影在线免费观看网站| 欧美成人h版在线观看| 久久99国产精品久久久久久久久| 这里只有精品在线观看| 亚洲欧美在线看| 欧美精品激情视频| 亚洲午夜av久久乱码| 97超碰国产精品女人人人爽| 国产精品午夜一区二区欲梦| 欧美性xxxxxx| 久久精品99久久久久久久久| 国产精品视频yy9099| 一区二区日韩精品| 91精品美女在线| 国产精品久久久久久久久久| 啊v视频在线一区二区三区| 欧美激情一区二区三区成人| 91久久夜色精品国产网站| 精品成人在线视频| 91精品国产自产91精品| 亚洲深夜福利视频| 欧美日韩第一视频| 亚洲精品综合精品自拍| 日韩视频在线免费观看| 久久久国产精彩视频美女艺术照福利| 国产成人激情视频| 国产精品亚洲аv天堂网| 国产日韩综合一区二区性色av| 亚洲天堂网在线观看| 国产精品视频自拍| 国产一区视频在线| 亚洲欧美一区二区精品久久久| 国产精品专区第二| 日韩中文在线不卡| 久久人人爽人人爽人人片亚洲| 亚洲免费影视第一页| 亚洲视频在线观看视频| 亚洲一区二区三区xxx视频| 国产精品久久中文| 伊人久久精品视频| 成人性教育视频在线观看|