新生命HTTP反向代理
去年為一家公司做了一個軟件驗證系統,所以使用該公司軟件的用戶都需要購買充值卡,并登錄到服務器校驗。服務端是IIS+ASP.Net設計的,為了保證服務端的安全(其實幾乎每天都被攻擊),客戶想出一個辦法,使用代理軟件來冒充真實的服務器提供服務,而可以同時運行很多個代理來承受外部的攻擊,這就是HTTP反向代理的原型了。因為這個反向代理是專門為這套驗證系統而開發的,所以里面插入了不少業務代碼,直接判斷不是非法用戶后才把請求轉發到真實服務器。
后來學習Ajax的時候,因為需要經常抓包調試,而一般網絡抓包工具都不支持抓自己訪問自己時的數據包。于是我想到了修改反向代理,使得瀏覽器通過反向代理來訪問Ajax頁面,然后代理那里把請求和響應的內容都輸出來,就達到目的了。
去年的時候曾經發布過一個反向代理的測試版,引起了CSDN上很多人的關注。
HTTP反向代理測試版 http://www.nnhy.org/HTML/19/41.htm
反向代理原理圖 http://www.nnhy.org/HTML/26/81.htm
(郁悶,帖超鏈接的時候編輯器老是報錯)
這次發布的是正式版,還有另外兩個:直接代理和間接代理,三個代理使用的是同一個核心,除核心外,都同時發布源碼。在這里,要感謝園子里的牧野,他的一個帖子,幫我解決了網絡斷開時報的異常無法捕獲的問題。
注意:
1,這三個代理運行需要安裝.Net 2.0。這里有下載http://www.skycn.com/soft/39946.html
2,監聽地址主要用于擁有多個IP而只想在某一個IP上提供服務時才需要選擇,否則默認0.0.0.0就可以了。
3,監聽端口就是代理提供服務的端口。對于直接代理和間接代理來說,就是設置代理時的端口。
4,如果不是為了調試,請不要打開顯示設置那里的三個顯示選擇,否則會消耗大量CPU。
5,請不要經過代理下載大文件,代理本身為了提高性能使用了很大的緩沖區,如果下載大文件,代理占用內存會急劇上漲。
6,三個代理都需要XLog.dll和XProxy.dll的支持,單獨使用時,請不要忘記拷貝這兩個文件。
7,*.config是相應的代理的設置文件,XML格式,可以修改里面的參數。
8,XLog.dll和XProxy.dll屬于X框架的一部分,除了X框架的組件外,三個代理都開放源代碼。
9,對于需要修改代碼的用戶,如果方便,請留下狀態欄那里的文字,謝謝^_^
后來學習Ajax的時候,因為需要經常抓包調試,而一般網絡抓包工具都不支持抓自己訪問自己時的數據包。于是我想到了修改反向代理,使得瀏覽器通過反向代理來訪問Ajax頁面,然后代理那里把請求和響應的內容都輸出來,就達到目的了。
去年的時候曾經發布過一個反向代理的測試版,引起了CSDN上很多人的關注。
HTTP反向代理測試版 http://www.nnhy.org/HTML/19/41.htm
反向代理原理圖 http://www.nnhy.org/HTML/26/81.htm
(郁悶,帖超鏈接的時候編輯器老是報錯)
這次發布的是正式版,還有另外兩個:直接代理和間接代理,三個代理使用的是同一個核心,除核心外,都同時發布源碼。在這里,要感謝園子里的牧野,他的一個帖子,幫我解決了網絡斷開時報的異常無法捕獲的問題。
注意:
1,這三個代理運行需要安裝.Net 2.0。這里有下載http://www.skycn.com/soft/39946.html
2,監聽地址主要用于擁有多個IP而只想在某一個IP上提供服務時才需要選擇,否則默認0.0.0.0就可以了。
3,監聽端口就是代理提供服務的端口。對于直接代理和間接代理來說,就是設置代理時的端口。
4,如果不是為了調試,請不要打開顯示設置那里的三個顯示選擇,否則會消耗大量CPU。
5,請不要經過代理下載大文件,代理本身為了提高性能使用了很大的緩沖區,如果下載大文件,代理占用內存會急劇上漲。
6,三個代理都需要XLog.dll和XProxy.dll的支持,單獨使用時,請不要忘記拷貝這兩個文件。
7,*.config是相應的代理的設置文件,XML格式,可以修改里面的參數。
8,XLog.dll和XProxy.dll屬于X框架的一部分,除了X框架的組件外,三個代理都開放源代碼。
9,對于需要修改代碼的用戶,如果方便,請留下狀態欄那里的文字,謝謝^_^
直接代理DirectProxy
和普通的HTTP代理一樣,沒有什么特別的功能。
使用方法:瀏覽器那里把HTTP代理的地址和端口設置為這里的地址和監聽端口即可。
間接代理IndirectProxy
新生命間接代理開發的目的就是為了躲避通過檢測直接代理而限制共享上網的軟件(比如DrCom),在直接代理不可用的網絡中提供代理功能。間接代理實際上就是把直接代理拆成服務端和客戶端兩部分,兩端間的通信加密傳輸。
使用方法:
撥號的機器啟動間接代理并勾選“服務器”選項作為服務端,設置好監聽端口;
要上網的機器啟動間接代理作為客戶端,遠程地址和端口填寫服務端的地址和監聽端口,瀏覽器那里設置HTTP代理,地址是自己127.0.0.1,端口是客戶端的監聽端口。
反向代理ReverseProxy
Http反向代理設計的初衷是保護真實Web服務器,后來也用于調試Ajax,其實還有很多很多功能,大家自己慢慢想吧。
使用方法:設置遠程地址為要映射的Web服務器的IP或域名,并設置端口(默認80),監聽端口就是別人用來訪問本機的端口。設置完成后啟動,所有人訪問本機的監聽端口時就被映射到遠程服務器,看起來本機就有一個和遠程服務器一模一樣的網站。
我不相信神話,我只相信汗水!我不相信命運,我只相信雙手!

浙公網安備 33010602011771號