《apache常用配置指令說明(2)》要點:
本文介紹了apache常用配置指令說明(2),希望對您有用。如果有疑問,可以聯系我們。
相關主題:apache配置
19. TransferLog:指定日志文件的位置。
語法:TransferLog file|pipe
本指令除不允許直接定義日志格式或根據條件進行日志記錄外,與CustomLog指令有完全相同的參數和功能。實際應用中,日志的格式是由最近的非別名定義的LogFormat指令指定
。如果沒有定義任何日志格式,則使用通用日志格式。
20. Alias:映射URL到文件系統的特定區域。
語法:Alias URL-path file-path|directory-path
Alias指令使文檔可以被存儲在DocumentRoot以外的本地文件系統中。以(%已解碼的)url-path路徑開頭的URL可以被映射到以directory-path開頭的本地文件。
如果對在DocumentRoot之外的某個目錄建立了一個Alias ,則可能需要通過<Directory>段明確的對目標目錄設定訪問權限。
21.ScriptAlias:映射一個URL到文件系統并視之為CGI腳本目錄。
語法:ScriptAlias URL-path file-path|directory-path
ScriptAlias指令的行為與Alias指令相同,但同時它又標明此目錄中含有應該由cgi-script處理器處理的CGI腳本。以URL-path開頭的(%已解碼的)的URL會被映射到由第二個參數指
定的具有完整路徑名的本地文件系統中的腳本。
ScriptSock:在以線程式MPM(worker)運行的Apache中設置用來與CGI守護進程通信的套接字文件名前綴(其后附加父進程 PID組成完整的文件名)。這個套接字將會用啟動Apache服
務器的父進程用戶權限(通常是root)打開。為了維護與CGI腳本通訊的安全性,不允許其他用戶擁有寫入套接字所在目錄的權限是很重要的。
22. DefaultType:在服務器無法由其他方法確定內容類型時,發送的默認MIME內容類型。
語法:DefaultType MIME-type
默認:DefaultType text/plain
23. AddType:在給定的文件擴展名與特定的內容類型之間建立映射關系。
語法:AddType MIME-type extension [extension] ...
MIME-type指明了包含extension擴展名的文件的媒體類型。這個映射關系會添加在所有有效的映射關系上,并覆蓋所有相同的extension擴展名映射。
extension參數是不區分大小的,并且可以帶或不帶前導點。
24. ErrorDocument:批示當遇到錯誤的時候服務器將給客戶端什么樣的應答。
語法:ErrorDocument error-code document
error-code 服務器返回的錯誤代碼
document 可以由一個斜杠(/)開頭來指示一個本地URL(相對于DocumentRoot),或是提供一個能被客戶端解釋的完整的URL。此外還能提供一個可以被瀏覽器顯示的消息。比如:
ErrorDocument 500http://www.entage.net/err500.html
ErrorDocument 404 /errors/bad_urls.html
ErrorDocument 403 "Sorry can't allow you access today"
25. EnableMMAP:指示httpd在遞送中如果需要讀取一個文件的內容,它是否可以使用內存映射。
語法:EnableMMAP On|Off
當處理一個需要訪問文件中的數據的請求時,比如說當遞送一個使用mod_include進行服務器端分析的文件時,如果操作系統支持,Apache將默認使用內存映射。
這種內存映射有時會帶來性能的提高,但在某些情況下,您可能會需要禁用內存映射以避免一些操作系統的問題:
在一些多處理器的系統上,內存映射會減低一些httpd的性能;
在掛載了NFS的DocumentRoot上,若已經將一個文件進行了內存映射,則刪除或截斷這個文件會造成httpd因為分段故障而崩潰。
在可能遇到這些問題的服務器配置過程中,應當使用下面的命令來禁用內存映射:
26. EnableMMAP Off
對于掛載了NFS的文件夾,可以單獨在<directory>段中指定禁用內存映射:
<Directory "/path-to-nfs-files">
EnableMMAP Off
</Directory>
27. EnableSendfile:控制httpd是否可以使用操作系統內核的sendfile支持來將文件發送到客戶端。
默認情況下,當處理一個請求并不需要訪問文件內部的數據時(比如發送一個靜態的文件內容),如果操作系統支持,Apache將使用sendfile將文件內容直接發送到客戶端而并不讀
取文件。
這個sendfile機制避免了分開的讀和寫操作以及緩沖區分配,但是在一些平臺或者一些文件系統上,最好禁止這個特性來避免一些問題:
一些平臺可能會有編譯系統檢測不到的有缺陷的sendfile支持,特別是將在其他平臺上使用交叉編譯得到的二進制文件運行于當前對sendfile支持有缺陷的平臺時;
在Linux上啟用IPv6時,使用sendfile將會觸發某些網卡上的TCP校驗和卸載bug;
當Linux運行在Itanium處理器上的時候,sendfile可能無法處理大于2GB的文件;
對于一個通過網絡掛載了NFS文件系統的DocumentRoot (比如:NFS或SMB),內核可能無法可靠的通過自己的緩沖區服務于網絡文件。
如果出現以上情況,你應當禁用sendfile :
EnableSendfile Off
針對NFS或SMB,可以單獨在<directory>段中指定禁用:
<Directory "/path-to-nfs-files">
EnableSendfile Off
</Directory>
28. include:在服務器配置文件中包含其它配置文件。
語法:Include file-path|directory-path
Shell風格(fnmatch())的通配符可以用于按照字母順序一次包含多個文件。另外,如果Include指向了一個目錄而不是一個文件,Apache將讀入該目錄及其子目錄下的所有文件,并
依照字母順序將這些文件作為配置文件進行解析。但是并不推薦這么做,因為偶爾會有臨時文件在這個目錄中生成,從而導致httpd啟動失敗。
文件的路徑可以是一個完整的絕對路徑(以一個斜杠開頭),或是相對于ServerRoot目錄的相對路徑。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/26_2.html