欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

<-
Apache > HTTP Server > 文檔 > 版本2.2
   致謝 | 譯者聲明 | 本篇譯者:金步國(guó) | 本篇譯稿最后更新:2006年1月3日 | 獲取最新版本

過濾器(Filter)

本文闡述Apache中過濾器的用法。

top

Apache 2 中的過濾器

Apache 2.0 及以后的版本中使用了過濾器鏈,使得應(yīng)用程序能夠以高度靈活的、可配置的方式處理進(jìn)入的數(shù)據(jù)和輸出的數(shù)據(jù),而無需關(guān)心這些數(shù)據(jù)來自哪里。我們可以預(yù)處理進(jìn)入的數(shù)據(jù)和后處理(post-process)輸出的數(shù)據(jù)。這些過程基本上獨(dú)立于傳統(tǒng)的請(qǐng)求處理階段。

Filters can be chained, in a Data Axis orthogonal to request processing

標(biāo)準(zhǔn)Apache發(fā)行版中的一些過濾器實(shí)例:

Apache還在內(nèi)部使用許多過濾器來對(duì)請(qǐng)求執(zhí)行諸如分塊、字節(jié)層次處理(byte-range handling)等功能。

可以從modules.apache.org或別處得到許多通過第三方過濾器模塊實(shí)現(xiàn)的應(yīng)用程序。其中的一些是:

top

智能過慮

Smart filtering applies different filter providers according to the state of request processing

Apache 2.1 及以后的版本中包含的mod_filter模塊允許過慮器鏈在運(yùn)行時(shí)進(jìn)行動(dòng)態(tài)配置。舉例來說,你可以在代理無法得到原始服務(wù)器發(fā)送的初始信息的情況下,安裝一個(gè)使用不同的過濾器來分別重寫HTML、處理JPEG圖片的代理。這是通過使用一個(gè)過濾器束(filter harness)來工作的,該過慮器束在運(yùn)行時(shí)根據(jù)實(shí)際內(nèi)容的不同將任務(wù)分配給不同的提供者(provider)。任何一個(gè)過濾器都何以被直接插入到過濾器鏈中并無條件的運(yùn)行,或者動(dòng)態(tài)的作為一個(gè)提供者(provider)插入。例如:

top

使用過濾器

有兩種使用過濾器的方法:簡(jiǎn)單方法和動(dòng)態(tài)方法。通常,你應(yīng)當(dāng)使用兩者之一;混合使用它們可能會(huì)導(dǎo)致意想不到的后果(雖然簡(jiǎn)單方法的輸入過濾器可以和簡(jiǎn)單或動(dòng)態(tài)方法的輸出過濾器混合使用)。

簡(jiǎn)單方法是配置輸出過濾器的唯一方法,并且對(duì)于需要靜態(tài)過濾器鏈的輸出過濾器來說是足夠的。相關(guān)的指令有: SetInputFilter, SetOutputFilter, AddInputFilter, AddOutputFilter, RemoveInputFilter, RemoveOutputFilter 。

動(dòng)態(tài)方法使輸出過濾器能夠進(jìn)行靜態(tài)的或者靈活的動(dòng)態(tài)配置成為可能,詳情請(qǐng)參見mod_filter模塊文檔。相關(guān)指令有: FilterChain, FilterDeclare, FilterProvider 。

一個(gè)更高級(jí)的指令AddOutputFilterByType也被支持,但是可能存在一些問題,目前還不贊成使用它,而代之以動(dòng)態(tài)配置。