分類  >  Web前端 >

[Web系列]一位牛人寫的 httpd.conf範例文檔( Apache 配置文檔 httpd )

tags:    時間:2013-12-11 12:54:58
[Web系列]一位牛人寫的 httpd.conf實例文檔( Apache 配置文檔 httpd )
### 此份配置同時適用於Windows(開發環境)和Linux(產品環境),依靠MPM的不同進行區分  ########################################################################################## ####   第一部分  全局配置 [這些指令的作用域含有"server config"但不含"virtual host"]  ##### ##########################################################################################  ##################################################################### ##### MPM 指令(所有MPM指令都僅能用於全局配置) #####  ##### prefork 與 mpm_winnt 的公共指令    #內核轉儲目錄(Linux上Apache以root身份啟動並切換至其他用戶,再忽略該指令可以禁止內核轉儲)   #CoreDumpDirectory /share/empty    #在所有IP上監聽80埠的HTTP協議    Listen 80 http    #半鏈接隊列的最大長度,不能設的太大,而應當通過啟用SYN-Cookie抵禦SYN洪水。    ListenBacklog 255    #主內存分配程序在未調用free()的情況下允許持有的最大自由內存數量(默認"0"表示無限制)    MaxMemFree 0    #將每個子進程在其生存期內允許伺服的最大請求數量設為有限值,可以防止(偶然的)內存泄漏無限進行,有助於當伺服器負載減輕的時候減少活動進程的數量    MaxRequestsPerChild 10000    #記錄父進程(監控進程)PID的文件 <IfModule mpm_winnt_module>    PidFile log/httpd.pid </IfModule> <IfModule mpm_prefork_module>    PidFile /var/run/httpd.pid </IfModule>    #TCP接收緩衝區大小(相當於8幀,如果不用http上傳可減小到4幀)    ReceiveBufferSize 11840   #TCP發送緩衝區大小(相當於8幀,一般比最常用頁面壓縮后的平均尺寸稍大)    SendBufferSize 11840    #父進程和子進程之間通信使用的計分板,建議不要設置以首選在匿名共享內存中建立   #ScoreBoardFile /tmp/httpd_status  ##### mpm_winnt 特有指令 <IfModule mpm_winnt_module>   #每個子進程可配置的線程數上限,應當和ThreadsPerChild可能達到的最大值保持一致    ThreadLimit 5   #每個子進程建立的線程數(必須小於等於ThreadLimit)    ThreadsPerChild 5    #處理客戶端連接的線程使用的棧尺寸(65536位元組),註釋掉以後將使用操作系統默認值   #ThreadStackSize 65536    #僅在其他軟體干擾AcceptEx()操作時才使用這個   #Win32DisableAcceptEx </IfModule>  ##### prefork 特有指令 <IfModule mpm_prefork_module>   #串列化多個子進程在多個socket上accept()請求的方法(僅在使用了多個Listen指令時候才有意義)   #建議在 Linux 2.6 內核並且 Glibc 中包含NPTL時使用posixsem選項   #當然,為了得到最佳性能,最好就根本不使用多個Listen語句。    AcceptMutex posixsem   #當AcceptMutex指令的值是fcntl或flock的時候,Apache使用的鎖文件的位置(最好放在TMPFS中)   #其他用戶可以通過建立一個同名文件來阻止伺服器啟動,以造成拒絕服務攻擊    LockFile /tmp/httpd_accept.lock    #子進程崩潰以後進行異常處理的鉤子程序    EnableExceptionHook Off    #優雅停止伺服器的超時秒數(5分鐘)    GracefulShutDownTimeout 300    #子進程運行時的組    Group www   #子進程運行時的用戶    User httpd    #允許同時伺服的最大接入請求數量(用於應對潛在的請求高峰)   #建議設為與postgresql的max_connections值相等(假定每個接入請求平均使用一個資料庫鏈接)    MaxClients 1000   #伺服器允許配置的進程數上限(保持和MaxClient相等)    ServerLimit 1000   #伺服器啟動時建立的子進程數    StartServers 30   #空閑子進程的最大數量(用於應對潛在的請求高峰)    MaxSpareServers 30   #空閑子進程的最小數量    MinSpareServers 15 </IfModule>   ##################################################################### ##### mod_so指令(一共只有兩條Load..指令,且僅能用於全局配置) #####  <IfModule mpm_winnt_module> #由於Linux已將下列模塊靜態編譯進了httpd,因此不需要動態載入(PHP除外) #特別提醒:Windows載入了mod_info/mod_status/mod_bw而Linux沒有載入。    #基於文件的摘要認證和基於用戶的授權以及訪問控制    LoadModule auth_digest_module bin/mod_auth_digest.so    LoadModule authn_default_module bin/mod_authn_default.so    LoadModule authn_file_module bin/mod_authn_file.so    LoadModule authz_default_module bin/mod_authz_default.so    LoadModule authz_user_module bin/mod_authz_user.so    LoadModule authz_host_module bin/mod_authz_host.so    #對輸出內容(一般是文本)進行壓縮    LoadFile   bin/zlib1.dll    LoadModule deflate_module bin/mod_deflate.so    #指定目錄索引文件以及為目錄提供"尾斜杠"重定向(僅供phppgadmin使用)    LoadModule dir_module bin/mod_dir.so    #環境變數控制    LoadModule env_module bin/mod_env.so    LoadModule setenvif_module bin/mod_setenvif.so    #通過配置文件控制"Expires:"和"Cache-Control:"頭內容    LoadModule expires_module bin/mod_expires.so    #記錄日誌和定製日誌格式    LoadModule log_config_module bin/mod_log_config.so    # MIME模塊(PHP依賴於此模塊)    LoadModule mime_module       bin/mod_mime.so    #實時重寫URL請求    LoadModule rewrite_module bin/mod_rewrite.so    #生成Apache配置情況的Web頁面    LoadModule info_module bin/mod_info.so   #生成描述伺服器狀態的Web頁面    LoadModule status_module bin/mod_status.so   #限制客戶端帶寬(用於模擬低速internet環境)[Http://apache.ivn.cl]    #LoadModule bw_module bin/mod_bw.so </IfModule>  ##### 添加PHP5支持 <IfModule mpm_winnt_module>    LoadFile   php/php5ts.dll    LoadModule php5_module  php/php5apache2_2.dll    PHPINIDir  php </IfModule> <IfModule mpm_prefork_module>    LoadModule php5_module  /lib/httpd/libphp5.so    PHPINIDir  /etc/httpd </IfModule>    AddType  application/x-httpd-php  .php .htm   ##################################################################### ##### 僅能夠用於全局配置的核心(Core)指令 #####  #根據協議類型對監聽Socket進行優化 #AcceptFilter http data #AcceptFilter https data  #限制客戶端HTTP請求頭域的數量  LimitRequestFields 20 #限制客戶端HTTP請求頭的位元組數  LimitRequestFieldSize 3000 #限制客戶端HTTP請求行的位元組數  LimitRequestLine 1020  #為虛擬主機在所有IP地址上監聽80  NameVirtualHost *:80  #伺服器根目錄(必須是絕對路徑),配置文件中的其它相對路徑都將基於此目錄 <IfModule mpm_winnt_module>  ServerRoot /GreenAPP/Apache </IfModule> <IfModule mpm_prefork_module>  ServerRoot /share/empty </IfModule>  #"Server:"應答頭(Prod最少,Full最多)  ServerTokens Prod  #伺服器超時  TimeOut 15  #禁止處理TRACE請求  TraceEnable off   ##################################################################### ##### 僅能夠用於全局配置的動態載入模塊指令 #####  # mime.types文件的位置(mod_mime) <IfModule mpm_winnt_module>  TypesConfig conf/mime.types </IfModule> <IfModule mpm_prefork_module>  TypesConfig /etc/httpd/mime.types </IfModule>  #檢查伺服器發送的 nonce 計數(尚未實現)(mod_auth_digest) #AuthDigestNcCheck On  #為了跟蹤客戶端而分配的共享內存位元組數(mod_auth_digest),每鏈接需要128位元組。  AuthDigestShmemSize 25600  #禁止在內存中緩衝日誌(mod_log_config)  BufferedLogs Off  #為了和RewriteMap*程序*通訊而使用的同步鎖文件的名稱(mod_rewrite) #RewriteLock file-path  <IfModule status_module>   #為每個請求記錄擴展的狀態信息    ExtendedStatus On </IfModule>    ################################################################################################ ####   第二部分  主伺服器配置[這些指令的作用域含同時含有"server config"和"virtual host"]   ##### ################################################################################################ ## 本配置文件將所有主機都當作虛擬主機,並不存在真正的"主伺服器",因此這部分配置只是所有虛擬主機的默認設置而已 ##  ##################################################################### ##### 適用於主伺服器配置的核心(Core)指令 #####  #### 虛擬主機必須重新設定的指令    #文檔樹的根目錄(沒有真正的主伺服器,因此不設置此值)(不能包含結尾斜杠)   #DocumentRoot directory-path   #當沒有指定ServerName時,伺服器會嘗試對IP地址進行反向查詢來推斷主機名。   #所以,必須胡亂設置一個默認的主伺服器主機名    ServerName xx.xx.xx.xx  #### 目錄相關    #分散式配置文件的名字    AccessFileName .htaccess   #目錄僅可以使用符號鏈接的特性    Options FollowSymLinks  #### 應答頭相關    #當應答內容是text/plain或text/html時在HTTP應答頭中加入的默認字符集    AddDefaultCharset utf-8   #無法由其他方法確定內容類型時,發送的默認MIME內容類型    DefaultType application/octet-stream   #禁止生成Content-MD5應答頭    ContentDigest Off   #用以創建ETag應答頭的文件的屬性    FileETag All  #### 貌似安全相關    #僅當一個請求映射到一個真實存在的路徑時才會被接受    AcceptPathInfo Off   #禁止URL中使用經過編碼的路徑分割符    AllowEncodedSlashes Off    #指定內部重定向和嵌套子請求的最大數量(至少是5)    LimitInternalRecursion 10   #限制客戶端發送的HTTP請求體的最大位元組長度(1.2M)    LimitRequestBody 1300000   #限制基於XML的請求體的最大位元組長度(1.2M)    LimitXMLRequestBody 1300000  <IfModule mpm_prefork_module>   #限制Apache子進程派生的進程佔用CPU的最大秒數    RLimitCPU 1 1   #限制由Apache子進程派生的進程佔用的最大內存位元組數    RLimitMEM 1 1   #限制由Apache子進程派生的進程所派生的進程數目    RLimitNPROC 0 1 </IfModule>    #禁止生成伺服器端生成文檔的頁腳    ServerSignature Off  #### 性能相關    #在遞送中使用內存映射來讀取文件(某些情況下需要禁用)    EnableMMAP On   #使用操作系統內核的sendfile支持來將文件發送到客戶端    EnableSendfile On   #禁用對客戶端IP的DNS查找    HostnameLookups Off   #持久鏈接(禁用)    KeepAlive Off    KeepAliveTimeout 1    MaxKeepAliveRequests 1  #### 錯誤應答與錯誤日誌    #自定義錯誤響應   #400 錯誤的請求    ErrorDocument 400 /error/http|ErrCode=400.htm   #403 禁止訪問    ErrorDocument 403 /error/http|ErrCode=403.htm   #404 未找到    ErrorDocument 404 /error/http|ErrCode=404.htm   #405 方法不被允許    ErrorDocument 405 /error/http|ErrCode=405.htm   #406 資源已經找到但MIME類型與Accpet頭中所指不兼容    ErrorDocument 406 /error/http|ErrCode=406.htm   #408 在伺服器許可的等待時間內客戶一直沒有發出任何請求    ErrorDocument 408 /error/http|ErrCode=408.htm   #409 由於請求和資源的當前狀態相衝突因此不能成功(通常和PUT有關)    ErrorDocument 409 /error/http|ErrCode=409.htm   #410 所請求的文檔已經不再可用而且伺服器不知道應該重定向到哪一個地址    ErrorDocument 410 /error/http|ErrCode=410.htm   #411 必須發送Content-Length頭否則無法處理    ErrorDocument 411 /error/http|ErrCode=411.htm   #412 指定的一些前提條件失敗    ErrorDocument 411 /error/http|ErrCode=412.htm   #413 請求實體太大    ErrorDocument 413 /error/http|ErrCode=413.htm   #414 請求URI太長    ErrorDocument 414 /error/http|ErrCode=414.htm   #415 不支持的MIME類型    ErrorDocument 415 /error/http|ErrCode=415.htm   #416 Range頭所請求的範圍無法滿足    ErrorDocument 416 /error/http|ErrCode=416.htm   #417 執行失敗    ErrorDocument 417 /error/http|ErrCode=417.htm   #423 鎖定的錯誤    ErrorDocument 423 /error/http|ErrCode=423.htm   #500 內部伺服器錯誤    ErrorDocument 500 /error/http|ErrCode=500.htm   #501 伺服器不支持實現請求所需要的功能    ErrorDocument 501 /error/http|ErrCode=501.htm   #502 伺服器用作網關或代理伺服器時收到了無效響應    ErrorDocument 502 /error/http|ErrCode=502.htm   #503 伺服器由於維護或者負載過重暫時不能提供服務    ErrorDocument 503 /error/http|ErrCode=503.htm   #504 不能及時地從遠程伺服器獲得應答(作為代理或網關的伺服器)    ErrorDocument 504 /error/http|ErrCode=504.htm   #505 伺服器不支持請求中所指明的HTTP版本   #ErrorDocument 505 /error/http|ErrCode=505.htm    #返回給客戶端的錯誤信息中包含的管理員郵件地址    ServerAdmin webmaster@oklaoshi.org    #錯誤日誌(未使用滾動) <IfModule mpm_winnt_module>    ErrorLog log/error.log    LogLevel info </IfModule> <IfModule mpm_prefork_module>    ErrorLog /var/log/httpd/error.log    LogLevel warn </IfModule>  #### 處理器  <IfModule mpm_winnt_module>   #定位CGI腳本解釋器(僅用於Win32)    ScriptInterpreterSource Script </IfModule>    #強制所有匹配的文件被一個指定的處理器處理   #SetHandler handler-name|None  #### 輸入輸出過濾器    #壓縮輸出所有文本內容(目前反對使用該指令,但因其簡單故而使用)    AddOutputFilterByType  DEFLATE  application/x-java script application/xhtml+xml application/xslt+xml application/xml application/xml-dtd text/css text/html text/plain text/richtext text/rtf text/xml    #設置處理客戶端請求和POST輸入時使用的過濾器   #SetInputFilter filter[;filter...]   #設置用於處理伺服器輸出應答的過濾器   #SetOutputFilter filter[;filter...]  #### 規範化    #使用客戶端提供的主機名和埠構建自引用URL   #可以巧妙解決雙線機房以及同目錄多站點的問題 #還可以巧妙解決同時運行產品環境和開發環境的問題(本配置未使用該技巧)    UseCanonicalName Off    UseCanonicalPhysicalPort Off   ##################################################################### ##### 適用於主伺服器配置的動態載入模(DSO)塊指令 #####  #### mod_deflate ####    #用於zlib一次壓縮的片斷大小(位元組)(20K),一般等於較大頁面的大小    DeflateBufferSize 20240   #壓縮程度,取值範圍在 1(最低壓縮率) 到 9(最高壓縮率)之間    DeflateCompressionLevel 3   #在日誌中將一個指示壓縮率標記附加在請求之後(關閉)   #DeflateFilterNote Input instream   #DeflateFilterNote Output outstream   #DeflateFilterNote Ratio ratio   #壓縮時最多可以使用多少內存(取值範圍在1到9之間)    DeflateMemLevel 9   #壓縮窗口的大小(取值範圍在1到15之間,越大壓縮效果越好)    DeflateWindowSize 15    #目錄結尾斜線(/)自動補全功能(通過重定向,強烈建議打開)   #默認的目錄索引文件(強烈建議按此順序設置) <IfModule mpm_prefork_module>    DirectorySlash On    DirectoryIndex index.html index.htm index.php </IfModule> <IfModule mpm_winnt_module>    DirectorySlash Off    DirectoryIndex none </IfModule>  #### mod_env ##### #### mod_setenvif #####    #傳送shell中的環境變數   #PassEnv env-variable [env-variable] ...   #強制gzip輸出[建議不要這樣,會讓機器人頭暈]   #SetEnv   force-gzip 1   #刪除環境變數(默認不記錄任何訪問日誌)    UnsetEnv AccessLog   #根據客戶端請求屬性設置環境變數(僅記錄對txt/php/html的訪問)    SetEnvIf Request_URI  ".(txt|php|html?)$"  AccessLog=1  ##### mod_expires #####    #啟用"Expires:"和"Cache-Control:"頭    ExpiresActive On   #由MIME類型配置的Expires頭的值   #ExpiresByType MIME-type <code>seconds   #默認所有文檔的有效期為30天     ExpiresDefault "access plus 30 days"   #但是php文檔默認不存在有效期(隨後應當根據實際情況詳細設置)   <Files *.php>     ExpiresActive Off   </Files>  ##### mod_log_config #####    #訪問日誌(虛擬主機+組合日誌格式)(有條件的記錄) <IfModule mpm_winnt_module>    CustomLog log/access.log "%v %h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-agent}i"" env=AccessLog </IfModule> <IfModule mpm_prefork_module>    CustomLog /var/log/httpd/access.log "%v %h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-agent}i"" env=AccessLog </IfModule>  ##### mod_mime #####    #在文件擴展名與特定的編碼方式之間建立映射關係   #AddEncoding MIME-enc extension [extension] ...   #將所有 .html.gz .css.gz 之類經過壓縮的靜態內容使用"Content-Encoding: gzip"頭髮送,   #這樣既節約帶寬又比使用mod_deflate的實時壓縮節約CPU   #但只適用於靜態內容並且要結合內容協商模塊的類型表功能才能實現,而且不利於搜索引擎機器人收錄,   #考慮到mod_expires的作用,這份配置放棄這種方法   #不過這樣也可能和 AddOutputFilterByType  DEFLATE .... 指令衝突,需要進一步實驗或尋找其他有效方法   #AddEncoding gzip .gz    #為所有文件設定特定的默認語言(簡體中文)    DefaultLanguage zh-CN    #在使用MultiViews查詢所匹配的文件時要包含的文件類型   #NegotiatedOnly選項規定每個跟在基礎名字後面的擴展名必須關聯到一個在內容協商時已知的mod_mime擴展名,   #例如:字符集、內容類型、語言、編碼方式。這是一種最嚴格也是副作用最少的實現方法,它是默認的處理方式。    MultiviewsMatch NegotiatedOnly    #在給定的文件擴展名與特定的字符集之間建立映射   #AddCharset charset extension [extension] ...   #在文件擴展名與特定的語言之間建立映射   #AddLanguage MIME-lang extension [extension] ...   #在文件擴展名與特定的處理器之間建立映射   #AddHandler handler-name extension [extension] ...   #在文件擴展名與特定的輸入過濾器之間建立映射   #AddInputFilter filter[;filter...] extension [extension] ...   #在文件擴展名與特定的輸出過濾器之間建立映射關係   #AddOutputFilter filter[;filter...] extension [extension] ...   #在給定的文件擴展名與特定的內容類型之間建立映射   #AddType MIME-type extension [extension] ...  ##### mod_rewrite #####    #關閉重寫引擎(不可繼承,必須在每個需要的虛擬主機中單獨開啟)    RewriteEngine Off   #重寫引擎日誌的詳細程度(9-最詳細,0-關閉)    RewriteLogLevel 0   #強制當前配置繼承其父配置(映射表、條件、規則)   #RewriteOptions inherit    #定義重寫發生的條件(為了提高匹配效率)和規則(不需要考慮#..內容,因為瀏覽器並不發送)    RewriteCond  %{REQUEST_URI}  .htm$    RewriteRule  ^(.+).htm$             $1.php       [NE,C]    RewriteRule  ^([^|]+)|(.+).php$    $1.php?$2    [NE,L]  <IfModule info_module>   #為server-info處理器顯示的模塊增加額外信息   #AddModuleInfo module-name string </IfModule>  <IfModule bw_module>   #開啟帶寬限制(默認是關閉的,也就是不做任何限制)    BandWidthModule On   #強制對所有請求進行限制    ForceBandWidthModule On   #連接數上限。必須與BandWidth的子網範圍對應,當然也可以不使用該指令。    MaxConnection 127.0.0.0/8     2   #帶寬上限(B/s)。這裡限制為16Kbps    BandWidth 127.0.0.0/8     2048   #帶寬下限(B/s),設為"-1"表示僅使用上限。    MinBandWidth all -1   #將數據包分割成每小塊1024位元組進行延遲發送,可用值為1024-131072,默認為8192。    BandWidthPacket 1024   #將所有大於50kB的文件下載速度限制壓低到8Kbps   #LargeFileLimit * 50 1024   #默認到達MaxConnection限制后將發送"503"錯誤代碼(HTTP_SERVICE_UNAVAILABLE),   #該指令允許你自定義一個未使用的錯誤代碼(300~599)並結合ErrorDocument指令實現自定義的錯誤代碼說明。   #BandWidthError 510 </IfModule>   ################################################################################################ ####   第三部分  默認目錄特性/認證/授權/訪問控制[這些指令的作用域含有"directory"]   ##### ################################################################################################ ## 默認特性窮盡限制與封閉之能事,因此必須在隨後的配置中按需"放水" ## ## 此部分並不包含所有作用域含有"directory"的指令 ##  <Directory />   #禁用.htaccess文件(僅可用於目錄)    AllowOverride None   #目錄僅可以使用符號鏈接的特性(僅可用於目錄)    Options FollowSymLinks   #必須同時通過認證並且滿足訪問控制條件    Satisfy all   #使用摘要認證    AuthType Digest    AuthDigestAlgorithm MD5    AuthDigestNonceLifetime 1200    AuthDigestQop auth    AuthDigestProvider file    AuthDefaultAuthoritative On   #所有認證共用一個用戶名/密碼文件 <IfModule mpm_winnt_module>    AuthUserFile conf/authn.md5 </IfModule> <IfModule mpm_prefork_module>    AuthUserFile /etc/httpd/authn.md5 </IfModule>    AuthzUserAuthoritative On    AuthzDefaultAuthoritative On   #拒絕所有訪問(mod_authz_host)   #Allow from 127.0.0.1    Deny from all    Order Allow,Deny </Directory>  #因為<DirectoryMatch>在所有<Directory>之後合併,所以下面可以確保拒絕訪問任何"secret"目錄 <DirectoryMatch /secret/>    AllowOverride None    Options FollowSymLinks    Satisfy all    Deny from all    Order Allow,Deny </DirectoryMatch>  ##下面是一段非常愚蠢的做法,完全推翻了上述默認的訪問控制,因為<Location>在最後合併 ##實際效果變成允許GET和POST訪問一切目錄和文件!!! #<Location /> #企圖僅僅允許GET和POST方法(實際上行不通) #<LimitExcept GET POST> #  Order Allow,Deny #  Deny from all #</LimitExcept> #</Location>   ############################################################################ ####   第四部分  默認虛擬主機[這些指令的作用域都含有"virtual host"]   ##### ############################################################################  <VirtualHost *:80> #(共享伺服器,存放與特定子站無關或無法在子站內部統一的內容)   #文檔樹根目錄、主機名和別名    DocumentRoot /www/oklaoshi/www     ServerName   oklaoshi.org     ServerAlias  oklaoshi.net oklaoshi.com oklaoshi.cn     ServerAlias  [url]www.oklaoshi.org[/url] [url]www.oklaoshi.net  [/url] [url]www.oklaoshi.com[/url] [url]www.oklaoshi.cn[/url]      #開啟重寫引擎並繼承主伺服器配置(映射表、條件、規則)      RewriteEngine On      RewriteOptions inherit      #傳送shell中指定的加密密鑰(最好只傳遞到特定目錄下的特定文件)     #PassEnv ENCRYPT_KEY      #重新設置PHP針對每個站點的不同特性      php_admin_value open_basedir  "/www/oklaoshi/"      php_admin_flag  file_uploads Off      php_admin_value include_path  "/www/oklaoshi/secret"      php_admin_value session.name  "OKLAOSHISESSIONID"      php_admin_value session.referer_check  "oklaoshi."      #默認為非本地引用      UnsetEnv  Local_Referer     #判斷是否為本地引用      SetEnvIf Referer "oklaoshi.(org|net|com|cn)" Local_Referer    <Directory   "/www/oklaoshi/www">       Order Allow,Deny       Allow from all     #防止盜鏈(必須放在<Directory>內部)     <FilesMatch ".(js|css|gif|jpe?g|png|swf)$">       Order Allow,Deny       Allow from env=Local_Referer     </FilesMatch>   </Directory>  #### 下面的指令只能在虛擬主機中設置   #刪除任何給定的擴展名與內容字符集之間的關聯   #RemoveCharset extension [extension] ...   #刪除任何給定的擴展名與內容編碼方式之間的關聯   #RemoveEncoding extension [extension] ...   #刪除任何指定擴展名與處理器之間的關聯   #RemoveHandler extension [extension] ...   #刪除指定擴展名與輸入過濾器之間的關聯   #RemoveInputFilter extension [extension] ...   #刪除指定的擴展名與內容語言之間的關聯   #RemoveLanguage extension [extension] ...   #刪除指定擴展名與輸出過濾器之間的關聯   #RemoveOutputFilter extension [extension] ...   #刪除指定擴展名與內容類型之間的關聯   #RemoveType extension [extension] ...  ## 伺服器配置報告   <IfModule info_module>   <Location /server-info>     SetHandler server-info     AuthName Apache_Admin     Require user Apache_Admin     Satisfy all     Order Allow,Deny     Allow from all   </Location>   </IfModule>  ## 伺服器狀態報告   <IfModule status_module>   <Location /server-status>     SetHandler server-status     AuthName Apache_Admin     Require user Apache_Admin     Satisfy all     Order Allow,Deny     Allow from all   </Location>   </IfModule>  </VirtualHost>    ############################################################################ ####   第四部分  其它虛擬主機   ##### ############################################################################  <VirtualHost *:80>    #文檔樹根目錄、主機名和別名(與"主伺服器"設為相同即可取消"主伺服器")(.org/.net電信 .com/.cn網通)(其他是各地分站)    DocumentRoot /www/oklaoshi/htdocs     ServerName   bj.oklaoshi.org     ServerAlias                   bj.oklaoshi.net    bj.oklaoshi.com  bj.oklaoshi.cn     ServerAlias  tj.oklaoshi.org  tj.oklaoshi.net    tj.oklaoshi.com  tj.oklaoshi.cn     ServerAlias  sh.oklaoshi.org  sh.oklaoshi.net    sh.oklaoshi.com  sh.oklaoshi.cn     ServerAlias  nj.oklaoshi.org  nj.oklaoshi.net    nj.oklaoshi.com  nj.oklaoshi.cn     ServerAlias  gz.oklaoshi.org  gz.oklaoshi.net    gz.oklaoshi.com  gz.oklaoshi.cn      #開啟重寫引擎並繼承主伺服器配置(映射表、條件、規則)      RewriteEngine On      RewriteOptions inherit      #傳送shell中指定的加密密鑰(最好只傳遞到特定目錄下的特定文件)      PassEnv ENCRYPT_KEY      #重新設置PHP針對每個站點的不同特性      php_admin_value open_basedir  "/www/oklaoshi/"      php_admin_flag  file_uploads Off      php_admin_value include_path  "/www/oklaoshi/secret"      php_admin_value session.name  "OKLAOSHISESSIONID"      php_admin_value session.referer_check  "oklaoshi."      #默認為非本地引用      UnsetEnv  Local_Referer     #判斷是否為本地引用      SetEnvIf Referer "oklaoshi.(org|net|com|cn)" Local_Referer    <Directory   "/www/oklaoshi/htdocs">       Order Allow,Deny       Allow from all     #防止盜鏈(必須放在<Directory>內部)     <FilesMatch ".(js|css|gif|jpe?g|png|swf)$">       Order Allow,Deny       Allow from env=Local_Referer     </FilesMatch>   </Directory>    #網站根用戶後台管理目錄(需要認證)   <Directory   "/www/oklaoshi/htdocs/root_admin">     AuthName Root_Admin     Require user Root_Admin     Satisfy all     Order Allow,Deny     Allow from all    #後台管理關閉重寫引擎     RewriteEngine Off   </Directory>  </VirtualHost>  <VirtualHost *:80> #(資料庫管理伺服器(phppgadmin))    #文檔樹根目錄、主機名和別名    DocumentRoot /www/phppgadmin     ServerName   dbadmin.oklaoshi.org     ServerAlias  dbadmin.oklaoshi.net dbadmin.oklaoshi.com dbadmin.oklaoshi.cn      #關閉重寫引擎      RewriteEngine Off     #修改主伺服器設置      AddDefaultCharset Off      LimitRequestBody 5242880      DirectorySlash On      DirectoryIndex index.html index.htm index.php      #重新設置PHP的一些特性      php_admin_value  open_basedir "/www/phppgadmin"      php_admin_flag   display_errors   Off      php_admin_flag   display_startup_errors   Off      php_admin_flag   html_errors   Off     #php_admin_flag   log_errors   Off      php_admin_value  max_execution_time   15      php_admin_value  memory_limit   16M      php_admin_value  max_input_time   600      php_admin_value  max_input_nesting_level   32      php_admin_value  post_max_size   4M      php_admin_flag   file_uploads On      php_admin_value  upload_max_filesize   4M      php_admin_value  arg_separator.output  "&"      php_admin_value  arg_separator.input   "&"      php_admin_value  variables_order   "GPCS"      php_admin_flag   implicit_flush    Off      php_admin_value  output_buffering  8192      php_admin_value  include_path  "."      php_admin_value  default_charset   none      php_admin_flag   detect_unicode   Off      php_admin_value  ignore_user_abort  On      php_admin_value  session.name  "DBADMINSESSIONID"      php_admin_value  session.referer_check  "dbadmin.oklaoshi."      php_admin_value  mbstring.func_overload   0    <Directory   "/www/phppgadmin">     AuthName DB_Admin     Require user DB_Admin     Satisfy all     Order Allow,Deny     Allow from all   </Directory>  </VirtualHost>  

推薦閱讀文章

Bookmark the permalink ,來源:互聯網