Apache HTTP Server 版本2.2
在多用戶系統(tǒng)中,用UserDir
指令可以允許每個(gè)用戶在其宿主目錄中擁有一個(gè)網(wǎng)絡(luò)站點(diǎn)。使用URL http://example.com/~username/
的訪問(wèn)者可以獲得用戶"username
"的宿主目錄中的內(nèi)容或者用UserDir
指定的子目錄中的內(nèi)容。
相關(guān)模塊 | 相關(guān)指令 |
---|---|
可以用UserDir
指令指定被網(wǎng)絡(luò)讀取的用戶網(wǎng)站目錄。此指令有幾種不同的形式。
如果路徑?jīng)]有前導(dǎo)斜杠,則被當(dāng)作該用戶宿主目錄下的子目錄。如果有以下配置:
UserDir public_html
則URL http://example.com/~rbowen/file.html
會(huì)被解釋為文件路徑:/home/rbowen/public_html/file.html
如果路徑有前導(dǎo)斜杠,則用此路徑和用戶名構(gòu)造路徑。如果有以下配置:
UserDir /var/html
則URL http://example.com/~rbowen/file.html
會(huì)被解釋為文件路徑:/var/html/rbowen/file.html
如果路徑中有星號(hào)(*),則星號(hào)部分會(huì)被用戶名所取代。如果有以下配置:
UserDir /var/www/*/docs
則URL http://example.com/~rbowen/file.html
會(huì)被解釋為文件路徑:/var/www/rbowen/docs/file.html
使用UserDir
可以限定被允許使用此功能的用戶:
UserDir enabled
UserDir disabled root jro fish
上述配置使除了列在disabled
中的用戶以外的所有用戶都可以使用此功能。還可以禁止所有用戶而只允許部分用戶使用此功能,例如:
UserDir disabled
UserDir enabled rbowen krietz
更多的例子請(qǐng)參見(jiàn)UserDir
文檔。
<Directory>
指令可以指定每個(gè)用戶主目錄中的一個(gè)特定的目錄為"允許cgi"的目錄,使每個(gè)用戶都可以擁有自己的cgi-bin
目錄。
<Directory /home/*/public_html/cgi-bin/>
Options ExecCGI
SetHandler cgi-script
</Directory>
這樣"放肆的"設(shè)置使得UserDir
被設(shè)置成public_html
,CGI程序example.cgi
可以用下面的URL從那個(gè)目錄加載:
http://example.com/~rbowen/cgi-bin/example.cgi
用戶可以通過(guò).htaccess
文件改變其網(wǎng)絡(luò)空間的服務(wù)器配置,因此必須確保AllowOverride
指令被正確設(shè)置,以限定用戶只能使用被允許的指令。其細(xì)節(jié)請(qǐng)參見(jiàn).htaccess指南。