Apache2的httpd.conf翻譯 - 中國WEB開發者網絡 (http://www.webasp.net) -- 技術教程 (http://www.webasp.net/article/) --- Apache2的httpd.conf翻譯 (http://www.webasp.net/article/15/14472.htm) |
| -- 作者:未知 -- 發佈日期: 2004-11-02 |
| PHP代碼:--------------------------------------------------------------------------------
# 基於 NCSA 服務的配置文件。 # #這是Apache服務器主要配置文件。 #它包含服務器的影響服務器運行的配置指令。 #參見<URL:<a href="http://httpd.ache.org/doc-2.0/" target="_blank">http://httpd.ache.org/doc-2.0/</a>>以取得關於這些指令的詳細信息 # #不要只是簡單的閱讀這些指令信息而不去理解它。 #這裡只是做了簡單的說明,如果你沒有參考在線文件,你就會被警告。 # #這些配置指令被分為下面三個部分: #1. 控制整個Apache服務器行為的部分(即全局環境變量) #2. 定義主要或者默認服務參數的指令,也為所有虛擬主機提供默認的設置參數 #3. 虛擬主機的設置參數 # #配置和日誌文件名:如果你指定的文件名以「/」開始(win32下以「dirver:/」), #服務器將使用絕對路徑,如果文件名不是以「/」開始的,那麼它將把ServerRoot #的值附加在文件名的前面,例如,對「logs/foo.log",如果ServerRoot的值 #為「/usr/local/apache2」,則該文件應為「/usr/local/apache2/logs/foo.log」 # ##第一區:全局環境參數 # #這裡設置的參數將影響整個Apache服務器的行為; #例如Apache能夠處理的並發請求的數量等。 # #ServerRoot:指出服務器保存其配置、出錯和日誌文件等的根目錄。 # #注意!如果你想要將它指定為NFS或其它網絡上的位置, #請一定要去閱讀與LockFile有關的文檔(可能在 #<URL:<a href="http://httpd.apache.org/docs-2.0/mod/mpm_common.html#lockfile" target="_blank">http://httpd.apache.org/docs-2.0/mo...n.html#lockfile</a>> )。 #這將會使你自己也能解決很多問題。 # #路徑的結尾不要添加斜線。 # ServerRoot "/usr/loacl/apache2" # #串行訪問的鎖文件必須保存在本地磁盤上 # <IfModule !mpm_winnt.c> <IfModule !mpm_neware.c> #LockFile logs/accept.lock </IfModule> </IfModule> #ScoreBoardFile:用來保存內部服務進程信息的文件。 #如果未指明(默認),記分板(scoreboard)將被保存在一個匿名的共享內存段中, #並且它不能被第三方軟件所使用。 #如果指定了,要確保不能使用兩個Apache使用同一個記分板文件, #這個記分板文件必須保存在本地磁盤上。 # <IfModule !mpm_netware.c> <IfModule !perchild.c> #ScoreBoardFile logs/apache_runtime_status <IfModule> <IfModule> # #PidFile:記錄服務器啟動進程號的文件。 # <IfModule !mpm_neware.c> PidFile logs/httpd.pid </IfModule> # #Timeout:接收和發送前超時秒數 # Timeout 300 # #KeepAlive:是否允許穩固的連接(每個連接有多個請求), #設為"Off"則停用。 # KeepAlive On # #MaxKeepAliveRequests:在穩固連接期間允許的最大請求數, #設為0表示無限制接入。 #我們推薦你將其設為一個較大的值,以便提高性能 MaxKeepAliveRequests 100 # #KeepAliveTimeout:在同一個連接上從同一台客戶上接收請求的秒數 # KeepAliveTimeout 15 ## ##Server-Pool大小設定(針對MPM的) ## # prefork MPM # StartServers:啟動時服務器啟動的進程數 # MinSpareServers:保有的備用進程的最小數目 # MaxSpareServers:保有的備用進程的最大數目 # MaxClients:服務器允許啟動的最大進程數 # MaxRequestsPerChild:一個服務進程允許的最大請求數 <IfModule prefork.c> StartServers 5 MinSpareServers 5 MaxSpareServers 10 MaxClients 150 MaxRequestPerChild 0 </IfModule> # worker MPM # StartServers:服務器啟動時的服務進程數目 # MaxClients:允許同時連接的最大用戶數目 # MinSpareThreads:保有的最小工作線程數目 # MaxSpareThreads:允許保有的最大工作線程數目 # ThreadsPerChild:每個服務進程中的工作線程常數 # MaxRequestsPerChild:服務進程中允許的最大請求數目 <IfModule worker.c> StartServers 2 MaxClients 150 MinSpareThreads 25 MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 0 </IfModule> # perchild MPM # NumServers:服務進程數量 # StartThreads:每個服務進程中的起始線程數量 # MinSpareThreads:保有的最小線程數量 # MaxSpareThreads:保有的最大線程數量 # MaxThreadsPerChild:每個服務進程允許的最大線程數 # MaxRequestsPerChild:每個服務進程允許連接的最大數量 <IfModule perchild.c> NumServers 5 StartThreads 5 MinSpareThreads 5 MaxSpareThreads 10 MaxThreadsPerChild 20 MaxRequestsPerChild 0 </IfModule> # WinNT MPM # ThreadsPerChild:服務進程中工作線程常數 # MaxRequestsPerChild:服務進程允許的最大請求數 <IfModule mpm_winnt.c> ThreadsPerChild 250 MaxRequestsPerChild 0 </IfModule> # BeOS MPM # StartThreads:服務器啟動時啟動的線程數 # MaxClients:可以啟動的最大線程數(一個線程等於一個用戶) # MaxRequestsPerThread:每個線程允許的最大請求數 <IfModule beos.c> StartThreads 10 MaxClients 50 MaxRequestsPerThread 10000 </IfModule> # NetWare MPM # ThreadStachSize:為每個工作線程分配的堆棧尺寸 # StartThreads:服務器啟動時啟動的線程數 # MinSpareThreads:用於處理實發請求的空閒線程數 # MaxSpareThreads:空閒線程的最大數量 # MaxThreads:在同一時間活動的最大線程數 # MaxRequestPerChild:一個線程服務請求的最大數量, # 推薦將其設置為0,以實現無限制的接入 <IfModule mpm_netware.c> ThreadStackSize 65536 StartThreads 250 MinSpareThreads 25 MaxSpareThreads 250 MaxThreads 1000 MaxRequestPerChild 0 </IfModule> # OS/2 MPM # StartServers:啟動的服務進程數量 # MinSpareThreads:每個進程允許的最小空閒線程 # MaxSpareThreads:每個進程允許的最大空閒線程 # MaxRequestsPerChild:每個服務進程允許的最大連接數 <IfModule mpmt_os2.c> StartServers 2 MinSpareThreads 5 MaxSpareThreads 10 MaxRequestsPerChild 0 </IfModule> # # Listen:允許你綁定Apache服務到指定的IP地址和端口上,以取代默認值 # 參見<VirtualHost>指令 # 使用如下命令使Apache只在指定的IP地址上監聽, # 以防止它在IP地址0.0.0.0上監聽 # # Listen 12.34.56.78:80 Listen 80 # # 動態共享支持(DSO) # # 為了能夠使用那些以DSO模式編譯的模塊中的函數,你必須有相應的「LoadModule」行, # 因此,在這裡包含了這些指令,以便能在使用它之前激活。 # 那些靜態編譯的模塊不需要在這裡列出 (即以「httpd -l」列出的模塊) # # 示例: # LoadModule foo_module modules/mod_foo.so # # # ExtendedStatus:當調用「server-status」時,控制Apache是產生「全」狀態 # 信息(ExtendedStatus On),還是產生基本信息(ExtendedStatus Off)。 # 默認為off # # ExtendedStatus On ### 第二區:「主」服務配置 # # 這一區建立被 「主」 服務器用的指令值,以回應那些不被 <VirtualHost> # 定義處理的任何請求。 # 這些數值也提供默認值給後面定義的<VirtualHost>容器。 # 如果<VirtualHost>中有定義,那麼這裡定義的指令值將被 # <VirtualHost>中的定義所覆蓋。 # <IfModule !mpm_winnt.c> <IfModule !mpm_neware.c> # # 如果你想使httpd以另外的用戶或組來運行,你必須在開始時以root方式啟動 # 然後再將它切換為你想要使用的用戶或組。 # # User/Group:運行httpd的用戶和組 # 在SCO (ODT3)上使用「User nouser」和「Group nogroup」 # 在HPUX上,你可能不能以nobody身份使用共享內存,建議創建一個www用戶。 # 注意一些核心(kernel)在組ID大於60000時拒絕setgid(Group)或semctl(IPC_SET), #節在這些系統上不要使用「Group #-1」。 # User nobody Group #-1 </IfModule> </IfModule> # # ServerAdmin:你的郵件地址,當發生問題時Apache將向你發出郵件。 # 作為一個出錯文檔,這個地址顯示在server-generated頁上, # 例如:admin@your-domain.com # ServerAdmin [email]kreny@sina.com[/email] # # ServerName指定Apache用於識別自身的名字和端口號。 # 通常這個值是自動指定的,但是我們推薦你顯式的指定它以防止啟動時出錯 # # 如果你為你的主機指定了一個無效的DNS名,server-generated重定向將不能工作。 # 參見UseCanonicalName指令 # # 如果你的主機沒有註冊DNS名,在這裡鍵入它的IP地址 # 無論如何,你必須使用它的IP地址來提供服務, # 這裡使用一種容易理解的方式重定向服務 ServerName <a href="http://www.dalouis.com:80" target="_blank">www.dalouis.com:80</a> # # UseCanonicalName:決定Apache如何構造URLS和 SERVER_NAME 和 SERVER_PORT 的指令。 # 當設置為 「Off」時,Apache會使用用戶端提供的主機名和端口號。 # 當設置為「On」,Apache會使用ServerName指令的值。 # UseCanonicalName Off # # DocumentRoot:你的文檔的根目錄。默認情況下,所有的請求從這個目錄進行應答。 # 但是可以使用符號鏈接和別名來指向到其他的位置。 # DocumentRoot "/home/redhat/public_html" # # Apache可以存取的每個目錄都可以配置存取權限(包括它的子目錄)。 # # 首先,我們配置一個高限制的特徵。 # 這將禁止訪問文件系統所在的目錄,並添加你希望允許訪問的目錄塊。 # 如下所示 <Directory /> Order Deny,Allow Deny from all </Directory> # # 注意從這裡開始你一定要明確地允許哪些特別的特徵能夠被使用。 # - 所以,如果Apache沒有像你所期待的那樣工作的話, # 請檢查你是否在下面明確的指定它可用。 # # # 這將改變到你設置的DocumentRoot # <Directory "/home/redhat/public_html"> # # Options:這個指令的值可以是「None」,「All」,或者下列選項的任意組合: # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews # # 注意,「MultiViews」必須被顯式的指定,「Options All」不能為你提供這個特性。 # # 這個指令既複雜又重要,請參見 #「<a href="http://httpd.apache.org/docs-2.0/mod/core.html#optioins」以取得更多的信息。" target="_blank">http://httpd.apache.org/docs-2.0/mo...〉酶S嗟男畔Ⅰ?lt;/a> # Options FollowSymLinks # # AllowOverride控制那些被放置在.htaccess文件中的指令。 # 它可以是「All」,「None」,或者下列指令的組合: # Options FileInfo AuthConfig Limit # AllowOverride None # # 控制誰可以獲得服務。 # Order allow,deny Allow from all </Directory> # # UserDir:指定在得到一個~user請求時將會添加到用戶home目錄後的目錄名。 # UserDir public_html # 為防止在UserDir指令上的漏洞,對root用戶設置 # 象「./」這樣的UserDir是非常有用的。 # 如果你使用Apache 1.3或以上版本,我們強烈建議你 # 在你的服務器配置文件中包含下面的行 UserDir disabled root # # 下面是一個使用UserDir指令使一個站點的目錄具有只讀屬性的示例: # # <Directory /home/*/public_html> # AllowOverride FileInfo AuthConfig Limit Indexes # Options MultiViews Indexes SymLinksIfOwnerMatch IncludeNoExec # <Limit GET POST OPTIONS PROPFIND> # Order allow,deny # Allow from all # </Limit> # <LimitExcept GET POST OPTIONS PROPFIND> # Order deny,allow # Deny from all # </LimitExcept> # </Directory> # # DirectoryIndex:定義請求是一個目錄時,Apache向用戶提供服務的文件名 # # index.html.var文件(一個類型映像文件)用於提供一個文檔處理列表, # 出於同樣的目的,也可以使用MultiViews選項,但是它會非常慢。 # DirectoryIndex index.php index.html index.html.var # # AccessFileName:在每個目錄中查詢為目錄提供附加配置指令的文件的文件名。 # 參見AllowOverride指令。 # AccessFileName .htaccess # # 下面的行防止.htaccess和.htpasswd文件被Web客戶查看。 # <Files ~ "^.ht"> Order allow,deny Deny from all </Files> # # Typeconfig:定義在哪裡查詢mime.types文件。 # TypeConfig conf/mime.types # # DefaultType:定義當不能確定MIME類型時服務器提供的默認MIME類型。 # 如果你的服務主要包含text或HTML文檔,「text/plain」是一個好的選擇; # 如果大多是二進制文檔,諸如軟件或圖像,你應使用 # 「application/octer-stream」來防止瀏覽器象顯示文本那樣顯示二進制文件。 # DefaultType text/plain # # mod_mime_magic允許服務器從自己定義自己類型的文件中使用不同的線索(hints), # 這個MIMEMagicFile指令定義hints定義所在的文件。 # <IfModule mod_mime_magic.c> MIMEMagicFile conf/magic </IfModule> # # HostnameLookups:指定記錄用戶端的名字還是IP地址,例如,本指令為on時 # 記錄主機名,如<a href="http://www.apache.org;為off時記錄IP地址,204.62.129.132。" target="_blank">www.apache.org;為off時記錄IP地址,204.62.129.132。</a> # 默認值為off,這要比設為on好得多,因為如果設為on則每個用戶端請求都將會 # 至少造成對 nameserver 進行一次查詢。 # HostnameLookups Off # # EnableMMAP:控制是否進行內存轉儲(如果操作系統支持的話)。 # 默認為on,如果你的服務器安裝在網絡文件系統上(NFS),請關閉它。 # 在一些系統上,關閉它會提升系統性能(與文件系統類型無關); # 具體情況請參閱<a href="http://httpd.apache.org/docs-2.0/mod/core.html#enablemmap" target="_blank">http://httpd.apache.org/docs-2.0/mo...html#enablemmap</a> # # EnableMMAP off # # EnableSendfile:控制是否使用sendfile kernel支持發送文件 # (如果操作系統支持的話)。默認為on,如果你的服務器安裝在網絡文件系統 # (NFS)上,請你關閉它。 # 參見<a href="http://httpd.apache.org/docs-2.0/mod/core.html#enablesendfile" target="_blank">http://httpd.apache.org/docs-2.0/mo...#enablesendfile</a> # # EnableSendfile off # # ErrorLog:錯誤日誌文件定位。 # 如果你沒有在<VirtualHost>內定義ErrorLog指令,這個虛擬主機的錯誤信息 # 將記錄在這裡。如果你在那兒定義了ErrorLog,這些錯誤信息將記錄在你所 # 定義的文件裡,而不是這兒定義的文件。 # ErrorLog logs/error_log # # LogLevel:控制記錄在錯誤日誌文件中的日誌信息數量。 # 可能的值包括:debug,info,notice,warn,error,crit,alert,emerg。 # LogLevel warn # # 下面的指令為CustomLog指令定義格式別名。 # LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%h %l %u %t \"%r\" %>s %b" common LogFormat "%{Referer}i -> %U" referer LogFormat "%{User-agent}i" agent # 你需要安裝了mod_logio.c模塊才能使用%I和%O。 # LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio # # 指定接入日誌文件的定位和格式(一般日誌格式)。 # 如果你沒有在<VirtualHost>內定義這個指令,傳輸信息將記錄在這裡, # 如果你定義了這個指令,則記錄在你指定的位置,而不是這兒定義的位置。 # CustomLog logs/access_log common # # 如果你想要記錄agent和referer信息,可以使用下面的指令 # # CustomLog logs/referer_log referer # CustomLog logs/agent_log agent # # 如果你想要使用一個文件記錄access,agent和referer信息, # 你可以如下定義這個指令: # # CustomLog logs/access_log combined # # ServerTokens # 這個指令定義包含在HTTP回應頭中的信息類型。默認為「Full」, # 這表示在回應頭中將包含模塊中的操作系統類型和編譯信息。 # 可以設為列各值中的一個: # Full | OS | Minor | Minimal | Major | Prod # Full傳達的信息最多,而Prod最少。 # ServerTokens Full # # 隨意的添加包含服務器版本和虛擬主機名字一行信息到server-generated輸出頁中 # (內部錯誤文檔,FTP目錄列表,mod_status和mod_info輸出等等,除了CGI錯誤 # 或自定義的錯誤文檔以外)。 # 設為「EMail」將包含一個指向ServerAdmin的mailto:連接。 # 可以為如下值:On | Off | EMail # ServerSignature On # # Aliases:在這時添加你需要的別名,格式如下: # Alias 別名 真實名 # # 注意,如果你在別名的未尾包含了「/」,那麼在URL中也需要包含「/」。 # 因此,「/icons」不是這個示例中的別名。 # 如果別名中以「/」結尾,那麼真實名也必須以「/」結尾, # 如果別名中省略了結尾的「/」,那麼真實名也必須省略。 # # 我們使用別名「/icons/」來表示FancyIndexed目錄列表,如果你不使用、 # FancyIndexing,你可以註釋掉它。 # # Alias /icons/ "/usr/local/apache2/icons/" # <Directory "/usr/local/apache2/icons"> # Options Indexes MultiViews # AllowOverride None # Order allow,deny ## Allow from all # </Directory> # # 這將改變ServerRoot/manual。這個別名提供了手冊頁所在的位置, # 即使你改變了你的DocumentRoot。如果你對有無手冊頁並不在意的話, # 你可以註釋掉它。 # Alias /manual "/usr/loacl/apache2/manual" <Directory "/usr/local/apache2/manual"> Options Indexes FollowSymLinks MultiViews IncludesNoExec AddOutputFilter Includes html Order allow,deny Allow from all </Directory> # # ScriptAlias:指定包含服務腳本的目錄。 # ScriptAliases 本質上與Aliases一樣,除了這裡的文檔在請求時做為程序處理處理以外。 # 尾部的「/」規則與Alias一樣 # ScriptAlias /cgi-bin/ "/usr/loacl/apache2/cgi-bin/" # 這裡是添加php 4支持的指令 AddType application/x-httpd-php .php LoadModule php4_module modules/libphp4.so <IfModule mod_cgid.c> # # 添加mod_cgid.c設置,mod_cgid提供使用cgid進行通訊的UNIX套接字的 # 腳本接口路徑。 # # Scriptsock logs/cgisock </IfModule> # # 將"/usr/local/apache2/cgi-bin"改為你的ScriptAliased指定的CGI目錄, # 如果你配置了的話。 # <Directory "/usr/local/apache2/cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all </Directory> # # Redirect允許你告訴客戶端使用存在於服務器名字空間中的文檔, # 而不是現在的,這幫助客戶定位那些改變了位置的文檔。 # 例如: # Redirect permanent /foo <a href="http://www.example.com/bar" target="_blank">http://www.example.com/bar</a> # # 控制server-generated目錄列表顯示的指令 # # # IndexOptions:控制server-generated目錄列表顯示特徵。 # IndexOptions FancyIndexing VersionSort # # AddIcon* 指令告訴服務器不同擴展名的圖像文件如何顯示, # 只適用於FancyIndexed指令 # AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip AddIconByType (TXT,/icons/text.gif) text # 基於 NCSA 服務的配置文件。 # #這是Apache服務器主要配置文件。 #它包含服務器的影響服務器運行的配置指令。 #參見<URL:<a href="http://httpd.ache.org/doc-2.0/" target="_blank">http://httpd.ache.org/doc-2.0/</a>>以取得關於這些指令的詳細信息 # #不要只是簡單的閱讀這些指令信息而不去理解它。 #這裡只是做了簡單的說明,如果你沒有參考在線文件,你就會被警告。 # #這些配置指令被分為下面三個部分: #1. 控制整個Apache服務器行為的部分(即全局環境變量) #2. 定義主要或者默認服務參數的指令,也為所有虛擬主機提供默認的設置參數 #3. 虛擬主機的設置參數 # #配置和日誌文件名:如果你指定的文件名以「/」開始(win32下以「dirver:/」), #服務器將使用絕對路徑,如果文件名不是以「/」開始的,那麼它將把ServerRoot #的值附加在文件名的前面,例如,對「logs/foo.log",如果ServerRoot的值 #為「/usr/local/apache2」,則該文件應為「/usr/local/apache2/logs/foo.log」 # ##第一區:全局環境參數 # #這裡設置的參數將影響整個Apache服務器的行為; #例如Apache能夠處理的並發請求的數量等。 # #ServerRoot:指出服務器保存其配置、出錯和日誌文件等的根目錄。 # #注意!如果你想要將它指定為NFS或其它網絡上的位置, #請一定要去閱讀與LockFile有關的文檔(可能在 #<URL:<a href="http://httpd.apache.org/docs-2.0/mod/mpm_common.html#lockfile" target="_blank">http://httpd.apache.org/docs-2.0/mo...n.html#lockfile</a>> )。 #這將會使你自己也能解決很多問題。 # #路徑的結尾不要添加斜線。 # ServerRoot "/usr/loacl/apache2" # #串行訪問的鎖文件必須保存在本地磁盤上 # <IfModule !mpm_winnt.c> <IfModule !mpm_neware.c> #LockFile logs/accept.lock </IfModule> </IfModule> #ScoreBoardFile:用來保存內部服務進程信息的文件。 #如果未指明(默認),記分板(scoreboard)將被保存在一個匿名的共享內存段中, #並且它不能被第三方軟件所使用。 #如果指定了,要確保不能使用兩個Apache使用同一個記分板文件, #這個記分板文件必須保存在本地磁盤上。 # <IfModule !mpm_netware.c> <IfModule !perchild.c> #ScoreBoardFile logs/apache_runtime_status <IfModule> <IfModule> # #PidFile:記錄服務器啟動進程號的文件。 # <IfModule !mpm_neware.c> PidFile logs/httpd.pid </IfModule> # #Timeout:接收和發送前超時秒數 # Timeout 300 # #KeepAlive:是否允許穩固的連接(每個連接有多個請求), #設為"Off"則停用。 # KeepAlive On # #MaxKeepAliveRequests:在穩固連接期間允許的最大請求數, #設為0表示無限制接入。 #我們推薦你將其設為一個較大的值,以便提高性能 MaxKeepAliveRequests 100 # #KeepAliveTimeout:在同一個連接上從同一台客戶上接收請求的秒數 # KeepAliveTimeout 15 ## ##Server-Pool大小設定(針對MPM的) ## # prefork MPM # StartServers:啟動時服務器啟動的進程數 # MinSpareServers:保有的備用進程的最小數目 # MaxSpareServers:保有的備用進程的最大數目 # MaxClients:服務器允許啟動的最大進程數 # MaxRequestsPerChild:一個服務進程允許的最大請求數 <IfModule prefork.c> StartServers 5 MinSpareServers 5 MaxSpareServers 10 MaxClients 150 MaxRequestPerChild 0 </IfModule> # worker MPM # StartServers:服務器啟動時的服務進程數目 # MaxClients:允許同時連接的最大用戶數目 # MinSpareThreads:保有的最小工作線程數目 # MaxSpareThreads:允許保有的最大工作線程數目 # ThreadsPerChild:每個服務進程中的工作線程常數 # MaxRequestsPerChild:服務進程中允許的最大請求數目 <IfModule worker.c> StartServers 2 MaxClients 150 MinSpareThreads 25 MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 0 </IfModule> # perchild MPM # NumServers:服務進程數量 # StartThreads:每個服務進程中的起始線程數量 # MinSpareThreads:保有的最小線程數量 # MaxSpareThreads:保有的最大線程數量 # MaxThreadsPerChild:每個服務進程允許的最大線程數 # MaxRequestsPerChild:每個服務進程允許連接的最大數量 <IfModule perchild.c> NumServers 5 StartThreads 5 MinSpareThreads 5 MaxSpareThreads 10 MaxThreadsPerChild 20 MaxRequestsPerChild 0 </IfModule> # WinNT MPM # ThreadsPerChild:服務進程中工作線程常數 # MaxRequestsPerChild:服務進程允許的最大請求數 <IfModule mpm_winnt.c> ThreadsPerChild 250 MaxRequestsPerChild 0 </IfModule> # BeOS MPM # StartThreads:服務器啟動時啟動的線程數 # MaxClients:可以啟動的最大線程數(一個線程等於一個用戶) # MaxRequestsPerThread:每個線程允許的最大請求數 <IfModule beos.c> StartThreads 10 MaxClients 50 MaxRequestsPerThread 10000 </IfModule> # NetWare MPM # ThreadStachSize:為每個工作線程分配的堆棧尺寸 # StartThreads:服務器啟動時啟動的線程數 # MinSpareThreads:用於處理實發請求的空閒線程數 # MaxSpareThreads:空閒線程的最大數量 # MaxThreads:在同一時間活動的最大線程數 # MaxRequestPerChild:一個線程服務請求的最大數量, # 推薦將其設置為0,以實現無限制的接入 <IfModule mpm_netware.c> ThreadStackSize 65536 StartThreads 250 MinSpareThreads 25 MaxSpareThreads 250 MaxThreads 1000 MaxRequestPerChild 0 </IfModule> # OS/2 MPM # StartServers:啟動的服務進程數量 # MinSpareThreads:每個進程允許的最小空閒線程 # MaxSpareThreads:每個進程允許的最大空閒線程 # MaxRequestsPerChild:每個服務進程允許的最大連接數 <IfModule mpmt_os2.c> StartServers 2 MinSpareThreads 5 MaxSpareThreads 10 MaxRequestsPerChild 0 </IfModule> # # Listen:允許你綁定Apache服務到指定的IP地址和端口上,以取代默認值 # 參見<VirtualHost>指令 # 使用如下命令使Apache只在指定的IP地址上監聽, # 以防止它在IP地址0.0.0.0上監聽 # # Listen 12.34.56.78:80 Listen 80 # # 動態共享支持(DSO) # # 為了能夠使用那些以DSO模式編譯的模塊中的函數,你必須有相應的「LoadModule」行, # 因此,在這裡包含了這些指令,以便能在使用它之前激活。 # 那些靜態編譯的模塊不需要在這裡列出 (即以「httpd -l」列出的模塊) # # 示例: # LoadModule foo_module modules/mod_foo.so # # # ExtendedStatus:當調用「server-status」時,控制Apache是產生「全」狀態 # 信息(ExtendedStatus On),還是產生基本信息(ExtendedStatus Off)。 # 默認為off # # ExtendedStatus On ### 第二區:「主」服務配置 # # 這一區建立被 「主」 服務器用的指令值,以回應那些不被 <VirtualHost> # 定義處理的任何請求。 # 這些數值也提供默認值給後面定義的<VirtualHost>容器。 # 如果<VirtualHost>中有定義,那麼這裡定義的指令值將被 # <VirtualHost>中的定義所覆蓋。 # <IfModule !mpm_winnt.c> <IfModule !mpm_neware.c> # # 如果你想使httpd以另外的用戶或組來運行,你必須在開始時以root方式啟動 # 然後再將它切換為你想要使用的用戶或組。 # # User/Group:運行httpd的用戶和組 # 在SCO (ODT3)上使用「User nouser」和「Group nogroup」 # 在HPUX上,你可能不能以nobody身份使用共享內存,建議創建一個www用戶。 # 注意一些核心(kernel)在組ID大於60000時拒絕setgid(Group)或semctl(IPC_SET), #節在這些系統上不要使用「Group #-1」。 # User nobody Group #-1 </IfModule> </IfModule> # # ServerAdmin:你的郵件地址,當發生問題時Apache將向你發出郵件。 # 作為一個出錯文檔,這個地址顯示在server-generated頁上, # 例如:admin@your-domain.com # ServerAdmin [email]kreny@sina.com[/email] # # ServerName指定Apache用於識別自身的名字和端口號。 # 通常這個值是自動指定的,但是我們推薦你顯式的指定它以防止啟動時出錯 # # 如果你為你的主機指定了一個無效的DNS名,server-generated重定向將不能工作。 # 參見UseCanonicalName指令 # # 如果你的主機沒有註冊DNS名,在這裡鍵入它的IP地址 # 無論如何,你必須使用它的IP地址來提供服務, # 這裡使用一種容易理解的方式重定向服務 ServerName <a href="http://www.dalouis.com:80" target="_blank">www.dalouis.com:80</a> # # UseCanonicalName:決定Apache如何構造URLS和 SERVER_NAME 和 SERVER_PORT 的指令。 # 當設置為 「Off」時,Apache會使用用戶端提供的主機名和端口號。 # 當設置為「On」,Apache會使用ServerName指令的值。 # UseCanonicalName Off # # DocumentRoot:你的文檔的根目錄。默認情況下,所有的請求從這個目錄進行應答。 # 但是可以使用符號鏈接和別名來指向到其他的位置。 # DocumentRoot "/home/redhat/public_html" # # Apache可以存取的每個目錄都可以配置存取權限(包括它的子目錄)。 # # 首先,我們配置一個高限制的特徵。 # 這將禁止訪問文件系統所在的目錄,並添加你希望允許訪問的目錄塊。 # 如下所示 <Directory /> Order Deny,Allow Deny from all </Directory> # # 注意從這裡開始你一定要明確地允許哪些特別的特徵能夠被使用。 # - 所以,如果Apache沒有像你所期待的那樣工作的話, # 請檢查你是否在下面明確的指定它可用。 # # # 這將改變到你設置的DocumentRoot # <Directory "/home/redhat/public_html"> # # Options:這個指令的值可以是「None」,「All」,或者下列選項的任意組合: # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews # # 注意,「MultiViews」必須被顯式的指定,「Options All」不能為你提供這個特性。 # # 這個指令既複雜又重要,請參見 #「<a href="http://httpd.apache.org/docs-2.0/mod/core.html#optioins」以取得更多的信息。" target="_blank">http://httpd.apache.org/docs-2.0/mo...〉酶S嗟男畔Ⅰ?lt;/a> # Options FollowSymLinks # # AllowOverride控制那些被放置在.htaccess文件中的指令。 # 它可以是「All」,「None」,或者下列指令的組合: # Options FileInfo AuthConfig Limit # AllowOverride None # # 控制誰可以獲得服務。 # Order allow,deny Allow from all </Directory> # # UserDir:指定在得到一個~user請求時將會添加到用戶home目錄後的目錄名。 # UserDir public_html # 為防止在UserDir指令上的漏洞,對root用戶設置 # 象「./」這樣的UserDir是非常有用的。 # 如果你使用Apache 1.3或以上版本,我們強烈建議你 # 在你的服務器配置文件中包含下面的行 UserDir disabled root # # 下面是一個使用UserDir指令使一個站點的目錄具有只讀屬性的示例: # # <Directory /home/*/public_html> # AllowOverride FileInfo AuthConfig Limit Indexes # Options MultiViews Indexes SymLinksIfOwnerMatch IncludeNoExec # <Limit GET POST OPTIONS PROPFIND> # Order allow,deny # Allow from all # </Limit> # <LimitExcept GET POST OPTIONS PROPFIND> # Order deny,allow # Deny from all # </LimitExcept> # </Directory> # # DirectoryIndex:定義請求是一個目錄時,Apache向用戶提供服務的文件名 # # index.html.var文件(一個類型映像文件)用於提供一個文檔處理列表, # 出於同樣的目的,也可以使用MultiViews選項,但是它會非常慢。 # DirectoryIndex index.php index.html index.html.var # # AccessFileName:在每個目錄中查詢為目錄提供附加配置指令的文件的文件名。 # 參見AllowOverride指令。 # AccessFileName .htaccess # # 下面的行防止.htaccess和.htpasswd文件被Web客戶查看。 # <Files ~ "^.ht"> Order allow,deny Deny from all </Files> # # Typeconfig:定義在哪裡查詢mime.types文件。 # TypeConfig conf/mime.types # # DefaultType:定義當不能確定MIME類型時服務器提供的默認MIME類型。 # 如果你的服務主要包含text或HTML文檔,「text/plain」是一個好的選擇; # 如果大多是二進制文檔,諸如軟件或圖像,你應使用 # 「application/octer-stream」來防止瀏覽器象顯示文本那樣顯示二進制文件。 # DefaultType text/plain # # mod_mime_magic允許服務器從自己定義自己類型的文件中使用不同的線索(hints), # 這個MIMEMagicFile指令定義hints定義所在的文件。 # <IfModule mod_mime_magic.c> MIMEMagicFile conf/magic </IfModule> # # HostnameLookups:指定記錄用戶端的名字還是IP地址,例如,本指令為on時 # 記錄主機名,如<a href="http://www.apache.org;為off時記錄IP地址,204.62.129.132。" target="_blank">www.apache.org;為off時記錄IP地址,204.62.129.132。</a> # 默認值為off,這要比設為on好得多,因為如果設為on則每個用戶端請求都將會 # 至少造成對 nameserver 進行一次查詢。 # HostnameLookups Off # # EnableMMAP:控制是否進行內存轉儲(如果操作系統支持的話)。 # 默認為on,如果你的服務器安裝在網絡文件系統上(NFS),請關閉它。 # 在一些系統上,關閉它會提升系統性能(與文件系統類型無關); # 具體情況請參閱<a href="http://httpd.apache.org/docs-2.0/mod/core.html#enablemmap" target="_blank">http://httpd.apache.org/docs-2.0/mo...html#enablemmap</a> # # EnableMMAP off # # EnableSendfile:控制是否使用sendfile kernel支持發送文件 # (如果操作系統支持的話)。默認為on,如果你的服務器安裝在網絡文件系統 # (NFS)上,請你關閉它。 # 參見<a href="http://httpd.apache.org/docs-2.0/mod/core.html#enablesendfile" target="_blank">http://httpd.apache.org/docs-2.0/mo...#enablesendfile</a> # # EnableSendfile off # # ErrorLog:錯誤日誌文件定位。 # 如果你沒有在<VirtualHost>內定義ErrorLog指令,這個虛擬主機的錯誤信息 # 將記錄在這裡。如果你在那兒定義了ErrorLog,這些錯誤信息將記錄在你所 # 定義的文件裡,而不是這兒定義的文件。 # ErrorLog logs/error_log # # LogLevel:控制記錄在錯誤日誌文件中的日誌信息數量。 # 可能的值包括:debug,info,notice,warn,error,crit,alert,emerg。 # LogLevel warn # # 下面的指令為CustomLog指令定義格式別名。 # LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%h %l %u %t \"%r\" %>s %b" common LogFormat "%{Referer}i -> %U" referer LogFormat "%{User-agent}i" agent # 你需要安裝了mod_logio.c模塊才能使用%I和%O。 # LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio # # 指定接入日誌文件的定位和格式(一般日誌格式)。 # 如果你沒有在<VirtualHost>內定義這個指令,傳輸信息將記錄在這裡, # 如果你定義了這個指令,則記錄在你指定的位置,而不是這兒定義的位置。 # CustomLog logs/access_log common # # 如果你想要記錄agent和referer信息,可以使用下面的指令 # # CustomLog logs/referer_log referer # CustomLog logs/agent_log agent # # 如果你想要使用一個文件記錄access,agent和referer信息, # 你可以如下定義這個指令: # # CustomLog logs/access_log combined # # ServerTokens # 這個指令定義包含在HTTP回應頭中的信息類型。默認為「Full」, # 這表示在回應頭中將包含模塊中的操作系統類型和編譯信息。 # 可以設為列各值中的一個: # Full | OS | Minor | Minimal | Major | Prod # Full傳達的信息最多,而Prod最少。 # ServerTokens Full # # 隨意的添加包含服務器版本和虛擬主機名字一行信息到server-generated輸出頁中 # (內部錯誤文檔,FTP目錄列表,mod_status和mod_info輸出等等,除了CGI錯誤 # 或自定義的錯誤文檔以外)。 # 設為「EMail」將包含一個指向ServerAdmin的mailto:連接。 # 可以為如下值:On | Off | EMail # ServerSignature On # # Aliases:在這時添加你需要的別名,格式如下: # Alias 別名 真實名 # # 注意,如果你在別名的未尾包含了「/」,那麼在URL中也需要包含「/」。 # 因此,「/icons」不是這個示例中的別名。 # 如果別名中以「/」結尾,那麼真實名也必須以「/」結尾, # 如果別名中省略了結尾的「/」,那麼真實名也必須省略。 # # 我們使用別名「/icons/」來表示FancyIndexed目錄列表,如果你不使用、 # FancyIndexing,你可以註釋掉它。 # # Alias /icons/ "/usr/local/apache2/icons/" # <Directory "/usr/local/apache2/icons"> # Options Indexes MultiViews # AllowOverride None # Order allow,deny ## Allow from all # </Directory> # # 這將改變ServerRoot/manual。這個別名提供了手冊頁所在的位置, # 即使你改變了你的DocumentRoot。如果你對有無手冊頁並不在意的話, # 你可以註釋掉它。 # Alias /manual "/usr/loacl/apache2/manual" <Directory "/usr/local/apache2/manual"> Options Indexes FollowSymLinks MultiViews IncludesNoExec AddOutputFilter Includes html Order allow,deny Allow from all </Directory> # # ScriptAlias:指定包含服務腳本的目錄。 # ScriptAliases 本質上與Aliases一樣,除了這裡的文檔在請求時做為程序處理處理以外。 # 尾部的「/」規則與Alias一樣 # ScriptAlias /cgi-bin/ "/usr/loacl/apache2/cgi-bin/" # 這裡是添加php 4支持的指令 AddType application/x-httpd-php .php LoadModule php4_module modules/libphp4.so <IfModule mod_cgid.c> # # 添加mod_cgid.c設置,mod_cgid提供使用cgid進行通訊的UNIX套接字的 # 腳本接口路徑。 # # Scriptsock logs/cgisock </IfModule> # # 將"/usr/local/apache2/cgi-bin"改為你的ScriptAliased指定的CGI目錄, # 如果你配置了的話。 # <Directory "/usr/local/apache2/cgi-bin"> AllowOverride None Options None Order allow,deny Allow from all </Directory> # # Redirect允許你告訴客戶端使用存在於服務器名字空間中的文檔, # 而不是現在的,這幫助客戶定位那些改變了位置的文檔。 # 例如: # Redirect permanent /foo <a href="http://www.example.com/bar" target="_blank">http://www.example.com/bar</a> # # 控制server-generated目錄列表顯示的指令 # # # IndexOptions:控制server-generated目錄列表顯示特徵。 # IndexOptions FancyIndexing VersionSort # # AddIcon* 指令告訴服務器不同擴展名的圖像文件如何顯示, # 只適用於FancyIndexed指令 # AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip AddIconByType (TXT,/icons/text.gif) text |
| webasp.net |