?? ahttp.txt
字號:
配合 ResourceConfig 指令加以改變。
conf/access.conf
包含控制文件之存取的指令。檔案名稱可以配合 AccessConfig
指令加以改變。
無論如何,這些慣例并不需要完全遵奉。
此伺服器也會讀取一個包含 MIME 文件型態(tài)的檔案;這個檔案名稱藉由
TypesConfig 指令設(shè)定,而且有個 conf/mini.types 作為預(yù)設(shè)。
2.4 記錄檔
2.4.1 pid 檔
伺服程式啟動時,它把父程序 httpd 的程序碼(process id)存往這個
log/httpd.pid 檔案。這個檔案名稱可以配合 PidFile 指令加以改變
。這個程序碼由管理者用來重新啟動或終止伺服程式;一個 HUP 信號
會使伺服程式重新讀取其配置檔而一個 TERM 信號會使它終止。
如果程序不正常地死掉(或被殺掉),那麼必須殺掉 httpd 子程序。
2.4.2 錯誤記錄
伺服器會將錯誤訊息記錄到一個記錄檔去,預(yù)設(shè)為 log/error_log 。
檔案名稱可以藉由 ErrorLog 指令設(shè)定;可以為不同的虛擬主機(jī)設(shè)定不
同的錯誤記錄。
2.4.3 傳輸記錄
伺服器一般會將每個請求記錄到一個傳輸檔,預(yù)設(shè)為 logs/access_log
。檔案名稱可以藉由 TransferLog 指令設(shè)定;可以為不同的虛擬主機(jī)
設(shè)定不同的傳輸記錄。
第三章
阿帕契核心部份(core)的特色
這些配置參數(shù)控制核心部份的阿帕契特色,而且是固定可以使用的。
3.1 AccessConfig 指令
語法: AccessConfig 檔案名稱
預(yù)設(shè): AccessConfig conf/access.conf
用於: server config, virtual host
狀態(tài): 核心
此伺服器讀取 ResourceConfig 檔案之後將會繼續(xù)讀取這個檔案以取得
更多指令。檔案名稱系相對於 ServerRoot 路徑。此特色可以使用如下
的方式關(guān)閉:
AccessConfig /dev/null
原本這個檔案只包含 節(jié)區(qū);事實(shí)上它現(xiàn)在可以包含任何
可以用於伺服器配置的指令。
3.2 AccessFileName 指令
語法: AccessFileName 檔案名稱
預(yù)設(shè): AccessFileName .htaccess
用於: server config, virtual host
狀態(tài): 核心
回傳文件給客戶端的時候,如果目錄的存取控制檔有啟動,伺服器會在
到達(dá)這份文件的路徑中的每個目錄里以此名稱搜尋存取控制檔。例如:
AccessFileName .acl
在回傳 /usr/local/web/index.html 這份文件前,此伺服器將會讀取
/.acl, /usr/.acl, /usr/local/.acl 以及 /usr/local/web/.acl 以
取得指令,除非以如下的方式關(guān)閉它們:
AllowOverride None
3.3 AllowOverride 指令
語法: AllowOverride override override ...
預(yù)設(shè): AllowOverride All
用於: directory
狀態(tài): 核心
伺服器找到 AccessFileName 指定的檔案時會需要知道該檔案所宣告的
哪些指令可以改變稍早的存取資訊。
Override 可以設(shè)為 None 在此情況下伺服器將不會讀取該檔,而設(shè)為
All 的話伺服器將會允許所有的指令,或是下列其中之一:
AuthConfig
允許驗認(rèn)指令的使用(AuthDBMGroupFile, AuthDBMUserFile,
AuthGroupFile, AuthName, AuthType, AuthUserFile and
require)
FileInfo
允許控制文件型態(tài)之指令的使用(AddEncoding, AddLanguage,
AddType, DefaultType and LanguagePriority)
Indexes
允許控制目錄索引之指令的使用(AddDescription, AddIcon,
AddIconByEncoding, AddIconByType, DefaultIcon,
DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore,
IndexOptions and ReadmeName)
Limit
允許控制存取主機(jī)之指令的使用(allow, deny and order)
Options
允許控制特定目錄特色之指令的使用(Options and XbitHack)
3.4 AuthName 指令
語法: AuthName 驗認(rèn)領(lǐng)域
用於: directory, .htaccess
需求: AuthConfig
狀態(tài): 核心
這個指令為某個目錄設(shè)定驗認(rèn)區(qū)域的名稱。這個區(qū)域會送給客戶端所以
使用者知道要傳送的使用者名稱以及密碼。它必須藉由 AuthType 以及
require 指令來完成,而且要有像 AuthUserFile 以及 AuthGroupFile
這些指令配合運(yùn)作。
3.5 AuthType 指令
語法: AuthType 型態(tài)
用於: directory, .htaccess
需求: AuthConfig
狀態(tài): 核心
這個指令為某個目錄選擇使用這驗認(rèn)型態(tài)。目前只有 Basic 實(shí)作出來
。它必須藉由 AuthName 以及 require 指令來完成,而且還要有像是
AuthUserFile 以及 AuthGroupFile 這些指令配合運(yùn)作。
3.6 BindAddress 指令
語法: BindAddress 伺服器位址
預(yù)設(shè): BindAddress *
用於: server config
狀態(tài): 核心
一臺 Unix 的 http 伺服器可以監(jiān)聽到該伺服機(jī)器每個 IP 位址的連線
或者只注意該伺服機(jī)器的一個位址。伺服器位址可以是:
。*
。一個 IP 位址
。一個完整的網(wǎng)際網(wǎng)路領(lǐng)域名稱
如果此值是 * 的話,那麼該伺服器將會監(jiān)聽每一個 IP 位址的連線,
否則它將只監(jiān)聽指定的 IP 位址。
這個選項可以用來作為另一種支援虛擬主機(jī)的方式取代
節(jié)段。
3.7 DefaultType 指令
語法: DefaultType mime-型態(tài)
預(yù)設(shè): DefaultType text/html
用於: server config, virtual host, directory, .htacess
需求: FileInfo
狀態(tài): 核心
有些時候伺服器會被要求提供某份文件,此文件不能藉由其 MIME 型態(tài)
對映來決定型態(tài)。
伺服器必須知會客戶端文件所包含的型態(tài)(content-type),所以不知道
型態(tài)的時候它便使用 DefaultType 。例如:
DefaultType image/gif
對於包含許多沒有 .gif 副檔名的 gif 圖形目錄是合適的。
3.8 指令
語法: ...
用於: server config, virtual host
狀態(tài): 核心
以及 用來把一組指令包裝起來,這些指令
將只應(yīng)用到所指明的目錄及其子目錄上。任何可以用於 directory 的
指令都可以使用。Directory 是到某目錄的完整路徑,或是替代字元串
(widecard string) 。在替代字元串中 `?' 能夠符合任何單一字元,
而 `*' 能夠符合任何順序的一些字元。例如:
Option Indexes FollowSymLinks
如果有多個 directory 節(jié)區(qū)能符合包含該文件的目錄(或其父目錄)
,那麼分布在 .htaccess 檔案里的指令是以最短先符合的順序加以應(yīng)
用的,例如:
AllowOverride None
AllowOverride FileInfo
存取 /home/web/dir/doc.html 這份文件的步驟是:
。應(yīng)用 AllowOverride None 指令(關(guān)掉 .htaccess 檔案)。
。應(yīng)用 AllowOverride FileInfo 指令(目錄 /home/web )。
。應(yīng)用任何在 /home/web/.htaccess 里面的 FileInfo 指令。
這個 directory 節(jié)段典型是用在 access.conf 檔案里,但它們可以
出現(xiàn)在任何配置檔里。 指令不能巢狀使用,而且不能出現(xiàn)
在 節(jié)段里。
3.9 DocumentRoot 指令
語法: DocumentRoot 目錄名稱
預(yù)設(shè): DocumentRoot /usr/local/etc/httpd/htdocs
用於: server config, virtual host
狀態(tài): 核心
這個指令設(shè)定 httpd 從這個目錄提供檔案服務(wù)。除非符合像是 Alias
這樣的指令,伺服器把所要求的 URL 附加到文件根 (document root)
來組合到達(dá)文件的路徑。例如:
DocumentRoot /usr/web
如此對於 http://www.my.host.com/index.html 檔案的存取便會參照
到 /usr/web/index.html 。
3.10 ErrorDocument 指令
語法: ErrorDocument 錯誤代碼 文件
用於: server config, virtual host
狀態(tài): 核心
有問題或錯誤發(fā)生的狀況下,可以配置阿帕契做四種反應(yīng)
1. 如同 NCSA httpd 1.3 的反應(yīng)
2. 輸出自定的(customized)訊息
3. 重導(dǎo)到某個本地的 URL 以處理該問題/錯誤
4. 重導(dǎo)到某個外部的 URL 以處理該問題/錯誤
2-4 是使用 ErrorDocument 來配置,其後跟隨 HTTP 反應(yīng)碼以及訊息
或是 URL 。
ErrorDocument 500 /cgi-bin/tester
ErrorDocument 404 /cgi-bin/bad_urls.pl
ErrorDocument 401 http://www.foo.bar/subscription_info.html
ErrorDocument 403 "Sorry can't allow you acess today
參閱: 自定回應(yīng)的文件。
3.11 ErrorLog 指令
語法: ErrorLog 檔案名稱
預(yù)設(shè): ErrorLog logs/error_log
用於: server config, virtual host
狀態(tài): 核心
這個錯誤記錄指令設(shè)定檔案名稱,伺服器將會把其遭遇的每個錯誤記錄
到這個檔案去。如果檔案名稱不是以 / 開始的話那麼它就會被假設(shè)為
相對於 ServerRoot 的路徑。例如:
ErrorLog /dev/null
這會有效地關(guān)掉錯誤記錄。
3.12 Group 指令
語法: Group unix-群組
預(yù)設(shè): Group #-1
用於: server config
狀態(tài): 核心
這個 Group 指令設(shè)定伺服器回答要求時所處的群組。為了要能夠使用
這個指令,必須以 root 身分起始執(zhí)行獨(dú)立的伺服器。 Unix-群組可以
是這些其中之一:
群組的名稱
藉由名稱參照所給的群組。
# 跟隨著群組號碼
藉由號碼參照某個群組。
建議你特別設(shè)立一個群組來執(zhí)行這個伺服器。某些管理者使用 nobody
這個使用者,但是這并非永遠(yuǎn)可行或合適的。
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -