Apache服務器高級設置指南(二)
2024-08-27 18:28:41
供稿:網友
三、 虛擬主機(virtual host)的設置
作為系統管理員,若你只有一個ip地址,卻有好幾個域名,又要求訪問每個域名都要看到不同的內容,那怎么辦?總不至于為每個域名都配上一臺服務器吧。這就要采用虛擬主機(virtual host)技術,幸好apache就支持這種功能。虛擬主機有兩種方式:ip-based(基于ip式)、name-based(基于域名式)。ip-based指的是一個域名對應一個ip地址,而name-based指的是多個域名對應一個ip地址。
虛擬主機的設置并不復雜,只要在httpd.conf文件中加入相應的命令就行。
下面是一個name-based(基于域名式)虛擬主機的httpd.conf例子(編者注:因篇幅原因,我們這只給出了相關部分,全文見www.swm.com.cn)。ip為:192.168.188.20,兩個域名分別是long.com.cn、short.com.cn。
httpd.conf:
namevirtualhost 192.168.188.20
serveradmin [email protected]
servername www.long.com
documentroot /home/httpd/long/html
errorlog logs/error_log
transferlog logs/access_log
serveradmin [email protected]
servername www.short.com
documentroot /home/httpd/short/html
errorlog logs/short.com-error_log
transferlog logs/short.com-access_log
namevirtualhost命令指定在哪個ip上設置虛擬主機
在virtualhost命令中進行各個主機的具體設置。
serveradmin命令是設定當www server執行有問題時,會將serveradmin所設置的e-mail傳送到瀏覽器,讓使用者用該e-mail與系統管理員聯系。
servername命令是設置www server的域名。
四、 提供個人主頁空間、用戶homepage的設定
經常見到某些網站提供個人主頁,顯得很神氣,其實你也可以開放你機器上的空間給別人,這很簡單就能實現。只要你按照下面的提示對你的www服務器配置文件進行修改。
給用戶開放個人主頁空間,一是要確定用戶主頁的存放目錄,二是開放用戶主頁目錄的讀取權限。
方法一
你以root的身份給用戶chen開個帳號,系統自動會給chen分配一空間/home/user,而后在/home/chen的目錄下建一public_html的子目錄,子目錄的屬性要設成other可讀和可執行的。
接著修改access.conf。在文件的最后加上以下一段:
allowoverride none
order allow,deny
allow from all
而后,重新運行httpd,用戶就可以通過http://www.swm.com.cn/~chen/訪問chen的個人主頁。
這種方法的優點是方便,缺點是安全性太差。
方法二
另一種辦法是在/home/httpd目錄下為用戶chen建個目錄chen。修改srm.conf中的userdir為/home/httpd/*/html,接著重新運行httpd便可以了。
<全文完>