#HTTP协议学习# (七)代理
本文轉自:http://www.cnblogs.com/TankXiao/archive/2012/12/12/2794160.html 粉字部分為個人添加
?
本文介紹一些HTTP代理服務器的概念和工作原理
?
閱讀目錄
- 什么是代理服務器
- Fiddler就是個典型的代理
- 代理作用一:FQ
- 代理作用二:匿名訪問
- 代理作用三:通過代理上網
- 代理作用四:通過代理緩存,加快上網速度
- 代理作用五:兒童過濾器
- IE代理設置:手動設置代理
- IE代理設置:使用自動配置腳本(PAC)
- IE代理設置:自動探測設置(WPAD)
- 代理認證,407狀態(tài)碼
- 使用代理服務器的安全問題
- 如何搭建代理服務器
?
什么是代理服務器
Web代理(proxy)服務器是網絡的中間實體。 代理位于Web客戶端和Web服務器之間,扮演“中間人”的角色。
HTTP的代理服務器即是Web服務器又是Web客戶端。
?
?
Fiddler就是個典型的代理
Fiddler 是以代理web服務器的形式工作的,它使用代理地址:127.0.0.1, 端口:8888. 當Fiddler退出的時候它會自動注銷代理,這樣就不會影響別的程序。
?
?
代理的作用一, FQ
很多人都喜歡用Facebook, 看youTube。但是我們在天朝,天朝有The Great of Wall(長城防火墻),屏蔽了這些好網站。? 怎么辦??? 通過代理來跳墻,就可以訪問了。
自己去尋找代理服務器很麻煩, 一般都是用FQ軟件來自動發(fā)現(xiàn)代理服務器的。
?
代理的作用二, 匿名訪問
經常聽新聞,說”某某某“在網絡上發(fā)布帖子,被跨省追緝了。 ? 假如他使用匿名的代理服務器,就不容易暴露自己的身份了。?
http代理服務器的匿名性是指: HTTP代理服務器通過刪除HTTP報文中的身份特性(比如客戶端的IP地址, 或cookie,或URI的會話ID), 從而對遠端服務器隱藏原始用戶的IP地址以及其他細節(jié)。?同時HTTP代理服務器上也不會記錄原始用戶訪問記錄的log(否則也會被查到)。
?
代理的作用三, 通過代理上網
比如局域網不能上網, 只能通過局域網內的一臺代理服務器上網。
?
代理的作用四, 通過代理緩存,加快上網速度
大部分代理服務器都具有緩存的功能,就好像一個大的cache, 它有很大的存儲空間,它不斷將新取得數(shù)據存儲到它本地的存儲器上, 如果瀏覽器所請求的數(shù)據在它本機的存儲器上已經存在而且是最新的,那么它就不重新從Web服務器取數(shù)據,而直接將存儲器上的數(shù)據傳給用戶的瀏覽器,這樣就能顯著提高瀏覽速度。
代理的作用五:兒童過濾器
很多教育機構, 會利用過濾器代理來阻止學生訪問成人內容。
?
IE代理設置:手動設置代理
IE瀏覽器可以手動設置代理, 很簡單,指定一個IP地址和端口就可以了。 如下圖。
工具 -> Internet選項 -> 連接 -> 局域網設置 (快捷鍵)
假如代理服務器的IP地址改變了,或者端口號改變了。 難道要幾百個客戶端的瀏覽器去修改瀏覽器設置? Impossable? 這太難維護了。? 下面還有一種更高級點的方法。
IE代理設置:使用自動配置腳本(PAC)
?手動配置代理很簡單,但是不靈活。 只能指定一個代理服務器,而且不支持故障轉移。?
在大公司里一般都使用PAC文件來配置。只需要指定PAC文件的URL就可以了, 如圖:
PAC(Proxy Auto Config)文件是一個小型的JavaScript程序的文本文件,后綴為.dat。?
當瀏覽器訪問網絡的時候,會根據PAC文件中的JavaScript函數(shù)來選擇恰當?shù)拇矸掌鳌?/p>
sample_pac.dat文件的內容
function FindProxyForURL(url, host) {if (url.substring(0, 5) == "http:") {// 應該使用指定的代理return "PROXY proxy:80";}else if (url.substring(0, 4) == "ftp:") {return "PROXY fproxy:80";}else if (url.substring(0, 7) == "gopher:") {return "PROXY gproxy";}else if (url.substring(0, 6) == "https:") {return "PROXY secproxy:8080";}else {// 直連,不經過任何代理return "DIRECT";}
}
?
?
IE代理設置:自動探測設置(WPAD)
?瀏覽器只要選中“自動檢測設置”, 就可以使用WPAD協(xié)議, WPAD會自動找到PAC文件的URL。? WPAD會使用一系列的資源發(fā)現(xiàn)技術(DHCP,DNS等)去尋找PAC文件。
?
代理認證,和407狀態(tài)碼
代理服務器也可以需要權限認證, HTTP定義了一種名為代理認證(Proxy authentication)的機制。 這種機制可以阻止對內容的請求。
當瀏覽器訪問需要認證的代理時, 代理服務器會返回407 Authorization Required,告訴瀏覽器輸入用戶名和密碼。
代理認證跟HTTP基本認證是一樣的機制, 如需了解代理認證的機制,請看[HTTP協(xié)議基本認證]
?
使用代理服務器的安全問題
代理服務器和抓包工具(比如Fiddler)都能看到http request中的數(shù)據。 如果我們發(fā)送的request中有敏感數(shù)據,比如用戶名,密碼,信用卡號碼。這些信息都會被代理服務器看到。所以非常危險。 所以我們一般都是用HTTPS來加密Http request.? 這樣代理服務器就看不到里面的數(shù)據了。(why??)
?
如何搭建代理服務器
可以使用CCproxy, 和Squid 來搭建代理服務器。
總結
以上是生活随笔為你收集整理的#HTTP协议学习# (七)代理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CF750G New Year and
- 下一篇: WiDi无线投屏怎么用苹果电脑如何无线投