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