重定向器

重定向器是squid的外部程式,它重寫來自客戶請求的URI。

重定向器是squid的外部程式,它重寫來自客戶請求的URI。例如,儘管某個用戶請求這個頁面:http://www.example.com/page1.html ,重定向器可以將請求改變到別的地方,例如:http://www.example.com/page2.html 。squid自動抓取新的URI,就像是客戶端的原始請求一樣。假如回響可被快取,squid將它存儲在新的URI下。
重定向功能允許你執行與squid相關的許多有趣事情。許多站點使用它們實現如下目的:訪問控制,移除廣告,本地鏡像,甚至用以繞開瀏覽器的bug。
關於使用重定向器進行訪問控制的好處之一是,你可以將用戶的請求重定向到某個頁面,這個頁面詳細解釋為何她的請求被拒絕。你也會發現重定向器比squid內建的訪問控制提供更多的彈性。然而不久你會看到,重定向器並不能訪問包含在客戶請求里的完整信息。
許多人使用重定向器來過濾web頁面廣告。大部分情形下,可以將對GIF或JPEG廣告圖片的請求,改變為請求位於本地伺服器上的,小而空的圖片。這樣,廣告就消失了,然而不會影響頁面布局。
所以在本質上,重定向器其實就是一個程式,它從標準輸入里讀取URI和其他信息,並將新的URI寫往標準輸出。Per和Python是寫重定向器的流行語言,儘管某些作者使用編譯性語言(例如C)以求更好的性能。
Squid的原始碼沒有包含任何重定向程式。作為管理員,你有責任編寫自己的重定向器,或者下載別人編寫的。該章開頭部分描述在squid和重定向進程之間的接口。我也提供幾個簡單的Perl重定向器示例。假如你志在使用別人的重定向器,而不是自己編寫。
總的來說:重定向器是運行在OSI 模型的表示層上的一個軟體,並且在客戶端和服務端網路作業系統上都存在。一旦用戶或者應用程式請求資源,重定向器就會分析這個請求。然後定向器檢查該請求以確定資源是本地的還是遠程的。如果是本地的,那么定向器就將請求傳送到CPU立即進行處理。如果資源是遠程的,那么重定向器就通過網路將請求傳送給伺服器或者這個資源的主機。

熱門詞條

聯絡我們