多線程代理伺服器介紹
Ⅰ 什麼是多線程並發伺服器
有多個 CPU 可用。單核機器上多線程的優勢不明顯。
線程間有共享數據。如果沒有共享數據,用模型 3b 就行。雖然我們應該把線程間的共享數據降到最低,但不代表沒有;
共享的數據是可以修改的,而不是靜態的常量表。如果數據不能修改,那麼可以在進程間用 shared memory,模式 3 就能勝任;
提供非均質的服務。即,事件的響應有優先順序差異,我們可以用專門的線程來處理優先順序高的事件。防止優先順序反轉;
latency 和 throughput 同樣重要,不是邏輯簡單的 IO bound 或 CPU bound 程序;
利用非同步操作。比如 logging。無論往磁碟寫 log file,還是往 log server 發送消息都不應該阻塞 critical path;
能 scale up。一個好的多線程程序應該能享受增加 CPU 數目帶來的好處,目前主流是 8 核,很快就會用到 16 核的機器了。
具有可預測的性能。隨著負載增加,性能緩慢下降,超過某個臨界點之後急速下降。線程數目一般不隨負載變化。
多線程能有效地劃分責任與功能,讓每個線程的邏輯比較簡單,任務單一,便於編碼。而不是把所有邏輯都塞到一個 event loop 里,就像 Win32 SDK 程序那樣。
Ⅱ 代理服務器詳解
咱們平常訪問網站是由瀏覽器直接向web伺服器發送請求信號,有時就會遇到一些網站不能訪問或者訪問速度非常慢的情況,而要解決這些情況,用代理伺服器顯然是不錯的選擇。它是用一台伺服器設置成的,裝有代理軟體。用代理伺服器訪問,先是瀏覽器將請求信號發送給代理伺服器,再由代理伺服器發送給web伺服器,實際上就是利用中轉來取得想要的信息實現訪問。
Ⅲ 代理伺服器的主要功能
代理伺服器是介於瀏覽器和Web伺服器之間的一台伺服器,是建立在超文本傳輸協議上的網路瀏覽方式,作用是可以防偽部分對協議進行了限制的區域網。
有以下功能:
1.傳統更換IP一般手動操作,需要耗費大量的時間、精力,一旦面對大量的切換IP任務會嚴重影響工作進度。使用優質代理IP輕松可換,比如IPIDEA可用率高,每日覆蓋了全球的ip量達到了9000w,操作簡單,還不會影響電腦中其他程序,工作效率翻倍提高。
2.突破自身IP訪問限制,訪問一些自己網路無法打開的網站等。
3.通常代理伺服器都具有緩沖的功能,有很大的存儲空間,網路出現擁擠或故障時,可通過代理伺服器訪問目的網站,節約帶寬、顯著提高訪問速度和效率。
4.使用代理IP,真正的IP會被代理IP完全隱藏,保證了上網及個人信息的安全。
5.通過代理伺服器,可以對區域網有線寬頻加以利用,提高內網用戶的上網速度。同時還可以當做防火牆,保護內網的安全。
Ⅳ 代理伺服器詳細介紹
引用:
代理有很多種解釋,而我們常常提到的代理,從計算機專業角度來說就是指代理伺服器相關,針對syx-kn 的提問,我先把代理伺服器向大家簡單的介紹一下吧!!
代理伺服器英文全稱是Proxy Server,其功能就是代理網路用戶去取得網路信息。形象的說:它是網路信息的中轉站。在一般情況下,我們使用網路瀏覽器直接去連接其他Internet站點取得網路信息時,須送出Request信號來得到回答,然後對方再把信息以bit方式傳送回來。代理伺服器是介於瀏覽器和Web伺服器之間的一台伺服器,有了它之後,瀏覽器不是直接到Web伺服器去取回網頁而是向代理伺服器發出請求,Request信號會先送到代理伺服器,由代理伺服器來取回瀏覽器所需要的信息並傳送給你的瀏覽器。而且,大部分代理伺服器都具有緩沖的功能,就好象一個大的Cache,它有很大的存儲空間,它不斷將新取得數據儲存到它本機的存儲器上,如果瀏覽器所請求的數據在它本機的存儲器上已經存在而且是最新的,那麼它就不重新從Web伺服器取數據,而直接將存儲器上的數據傳送給用戶的瀏覽器,這樣就能顯著提高瀏覽速度和效率。更重要的是:Proxy Server (代理伺服器)是 Internet鏈路級網關所提供的一種重要的安全功能,它的工作主要在開放系統互聯 (OSI) 模型的對話層。
代理伺服器(Proxy Server)就是個人網路和網際網路服務商之間的中間代理機構,它負責轉發合法的網路信息,並對轉發進行控制和登記。在使用網路瀏覽器瀏覽網路信息的時候,如果使用代理伺服器,瀏覽器就不是直接到Web伺服器去取回網頁,而是向代理伺服器發出請求,由代理伺服器取回瀏覽器所需要的信息。目前使用的網際網路是一個典型的客戶機/伺服器結構,當用戶的本地機與網際網路連接時,通過本地機的客戶程序比如瀏覽器或者軟體下載工具發出請求,遠端的伺服器在接到請求之後響應請求並提供相應的服務。
代理伺服器處在客戶機和伺服器之間,對於遠程伺服器而言,代理伺服器是客戶機,它向伺服器提出各種服務申請;對於客戶機而言,代理伺服器則是伺服器,它接受客戶機提出的申請並提供相應的服務。也就是說,客戶機訪問網際網路時所發出的請求不再直接發送到遠程伺服器,而是被送到了代理伺服器上,代理伺服器再向遠程的伺服器提出相應的申請,接收遠程伺服器提供的數據並保存在自己的硬碟上,然後用這些數據對客戶機提供相應的服務。
講了這么多,其實對於菜鳥們所提的代理,主要是應用,這里我再附加上設置代理伺服器的方法:
IE4.01:菜單欄「查看」-> 下拉菜單「Internet選項」-> 選項卡「連接」-> 在「代理伺服器」一欄選中「通過代理伺服器訪問Internet」,輸入地址和埠號。-> 確定。
IE 5.0:菜單欄「工具」-> 下拉菜單「Internet選項」-> 選項卡「連接」-> 在「撥號設置」中選中您目前使用的連接,然後點擊右側的「設置」-> 在中間的「代理伺服器」欄選中「使用代理伺服器」-> 在「地址」和「埠」欄輸入HTTP代理伺服器地址和埠-> 確定 -> 確定。
這個 口述講不清楚因為有圖片給你解釋能更清楚
給你個鏈接 http://www.moon-soft.com/book/rhsydlfwq.htm
參考資料:http://www.moon-soft.com
Ⅳ 關於代理伺服器
代理伺服器的主要功能有:
(1)設置用戶驗證和記賬功能,可按用戶進行記賬,沒有登記的用戶無權通過代理伺服器訪問Internet網。並對用戶的訪問時間、訪問地點、信息流量進行統計。
(2)對用戶進行分級管理,設置不同用戶的訪問許可權,對外界或內部的Internet地址進行過濾,設置不同的訪問許可權。
(3)增加緩沖器(Cache),提高訪問速度,對經常訪問的地址創建緩沖區,大大提高熱門站點的訪問效率。通常代理伺服器都設置一個較大的硬碟緩沖區(可能高達幾個GB或更大),當有外界的信息通過時,同時也將其保存到緩沖區中,當其他用戶再訪問相同的信息時,則直接由緩沖區中取出信息,傳給用戶,以提高訪問速度。
(4)連接Internet與Internet,充當防火牆(Firewall):因為所有內部網的用戶通過代理伺服器訪問外界時,只映射為一個IP地址,所以外界不能直接訪問到內部網;同時可以設置IP地址過濾,限制內部網對外部的訪問許可權。
(5)節省IP開銷:代理伺服器允許使用大量的偽IP地址,節約網上資源,即用代理伺服器可以減少對IP地址的需求,對於使用區域網方式接入Internet ,如果為區域網(LAN)內的每一個用戶都申請一個IP地址,其費用可想而知。但使用代理伺服器後,只需代理伺服器上有一個合法的IP地址,LAN內其他用戶可以使用10.*.*.*這樣的私有IP地址,這樣可以節約大量的IP,降低網路的維護成本。
代理伺服器的用途
在日常網路中有很多用途,這里把我們所熟悉的一些作用總結和分析一下,分類說明:
一、共享網路
最常見的可能是用代理伺服器共享上網,很多人不知不覺中就在用,比如通過sygate,wingate,isa,ccproxy,NT系統自帶的網路共享等,可以提供企業級的文件緩存、復制和地址過濾等服務,充分利用區域網出口的有限帶寬,加快內網用戶的 訪問速度,可以解決僅僅有一條線路一個IP,IP資源不足,帶區域網很多用戶上網的功能,同時可以做為一個防火牆,隔離內網與外網,並且能提供監控網路和記錄傳輸信息的功能,加強了區域網的安全性,又便於對上網用戶進行管理。
二、訪問代理
加快訪問網站速度,在網路出現擁擠或故障時,可通過代理伺服器訪問目的網站。比如A要訪問C網站,但A到C網路出現問題,可以通過繞道,假設B是代理伺服器,A可通過B, 再由B到C。大家還記得前幾個月,有段時間網路不正常,基本訪問不了外國網站,如GOOGLE,YAHOO, 甚至連CCF都訪問不了,心裡很著急。結果通過一個代理伺服器,發現都可以訪問,速度還不錯,在這樣的情況下,代理伺服器就可以發揮很大的作用了。還有一類代理伺服器備份有相當數量的緩存文件,如果我們當前所訪問的數據在代理伺服器的緩存文件中,則可直接 讀取,而無需再連接到遠端Web伺服器。這樣,加快了訪問速度。
三、防止攻擊
隱藏自己的真實地址信息,還可隱藏自己的IP,防止被黑客攻擊。通過分析指定IP地址,可以查詢到網路用戶的目前所在地。例如,大家在一些論壇上看到,論壇中明確標出了發帖用戶目前所在地,這就是根據論壇會員登錄時的IP地址解析的。還有平日里我們最為常 用的顯IP版QQ,在「發送消息」窗口中,可以查看對方的IP及解析出的地理位置。而當我們使用相應協議的代理伺服器後,就可以達到隱藏自己當前所在地地址的目的了。
四、突破限制
代理伺服器還可以突破網路限制。比如區域網對上網用戶的埠,目的網站,協議,游戲,即時通訊軟體等的限制,都可以突破這些限制,可參見我這篇帖子,如何突破區域網對上網用戶的一些限制 不再重復。舉個例子:GOOGLE我們都喜歡用,其實GOOGLE有一個功能就有點類似於代理伺服器的功能,就是網頁快照,現在網站經常發生變動,地址或者網站關了,網站伺服器發生故障了,或者已經更新了,但我們仍然要查以前非常有用的資料,網頁快照就排 上用場了,Google 以其復雜而全自動的搜索方法排除了任何人為因素對搜索結果的影響,保證了網頁排名的客觀公正,Google 可以方便、誠實、客觀地幫您在網上找到有價值的資料。GOOGLE有一個海量的資料庫,如果找不到伺服器,Google 儲存的網頁快照也可救急。雖然網頁快照中的信息可能不是最新的,但在網頁快照中查找資料要比在實際網頁中快得多,這時可以通過加密代理訪問Google,再訪問其網頁快照來救急。
五、掩藏身份
代理伺服器知識是黑客基本功,黑客的很多活動都是通過代理伺服器, 比如掃描、刺探,對區域網內機器進行滲透,黑客一般攻擊的時候都是中轉了很多級跳板,才攻擊目標機器。隱藏了身份,保證了自己的安全。
六、提高速度
提高下載速度,突破下載限制。比如有的網站提供的下載資源,做了一IP一線程的限制,這時候可以用影音傳送帶,設置多線程,為每個線程設置一個代理。對於限制一個IP的情況很好突破,只要用不同的代理伺服器,就可同時下載多個資源,適用於從WEB和FTP 上下載的情況。不過如果是論壇裡面的資源,每個用戶一個賬號,並且限制一賬號一IP, 代理伺服器就突破不了。還有一種情況,比如我們這里,電信的用戶上不了聯通的電影網站,聯通的用戶上不了的電信電影網站,這種情況只要電信的找一個聯通地代理,IP地址屬聯通就行。聯通找一個電信代理。就可以去電影網站下載其電影。教育網還可以通過代理服 務器可使無出國許可權或無訪問某IP段許可權的計算機訪問相關資源。
Ⅵ 代理伺服器是什麼有什麼功能
代理伺服器接收遠程伺服器提供的數據保存在自己的硬碟上, 如果有許多用戶同時使用這一 個代理伺服器,他們對網際網路站點所有的要求都會經由這台代理伺服器,當有人訪問過某一 站點後,所訪問站點上的內容便會被保存在代理伺服器的硬碟上, 如果下一次再有人訪問這個站點, 這些內容便會直接從代理伺服器中獲取,而不必再次連接遠程伺服器。因此,它可以節約帶寬、提高訪問速度。
Ⅶ 什麼是代理伺服器,為什麼叫做「代理「好處是什麼,如何在C#程序中鏈接到代理伺服器
代理程序的種類非常多,根據協議不同可以分成HTTP代理服務程序、FTP代理服務程序等,而運行代理服務程序的伺服器也就相應稱為HTTP代理伺服器和FTP代理伺服器。本文將介紹的Web代理服務程序代理的是HTTP協議。
一、網路代理程序的優點
代理服務所起的是一個橋的作用,它是網路信息的中轉站。在網路中應用代理服務一般是基於以下幾個原因:
(1)充分利用IP地址資源。在區域網中,一般對外的IP地址都是非常有限的,為了保證區域網內部的主機都能夠訪問互聯網資源,通過網路代理就可以實現。
(2)能夠保證網路安全。網路代理可以充當內部網和互聯網之間的防火牆,通過過濾IP地址,限定某些IP地址對外部資源的訪問。
(3)能夠有效地隱藏自己的IP地址和主機名。由於所有對外網的請求都是通過代理伺服器實現的,所以目的主機只能知道代理伺服器的IP地址。
(4)提高網路速度。通常代理伺服器都設有一個較大的硬碟緩沖區,它存儲界數據,當你再訪問相同的數據時,則可以直接從緩沖區中取出信息,從而提高訪問速度。
二、網路代理的類型及實現原理
網路代理服務根據工作層次,一般可分為應用層代理、傳輸層代理和SOCKS代理。應用層代理是工作在TCP/IP參考模型的應用層之上,它支持對應用
層協議(如HTTP、FTP)的代理。它提供的控制最多,但是不靈活,必須要有相應的協議支持。如果協議不支持代理(如SMTP和POP),那就只能在應
用層以下代理,也即傳輸層代理。傳輸層代理直接與TCP層交互,更加靈活。要求代理伺服器具有部分真正伺服器的功能:監聽特定TCP或UDP埠,接收客
戶端的請求同時向客戶端發出相應的響應。另一種代理需要改變客戶端的IP棧,即SOCKS代理。它是可用的最強大、最靈活的代理標准協議。SOCK V4
允許代理伺服器內部的客戶端完全地連接到外部的伺服器,SOCK V5增加了對客戶端的授權和認證,因此它是一種安全性較高的代理。本節後面介紹的代理是
一種應用層上面的代理,所代理的協議是HTTP,也就是經常見到的Web代理。
正如上面所說,網路代理就是一個連接客戶端(需要代理的計算機)和伺服器端(提供訪問資源的伺服器)的橋。要實現這種橋的功能,網路代理就必須滿足下列條件,其實也是代理服務的運行的流程:
(1)接收並解析客戶端的請求。
(2)創建到伺服器的新連接,並轉發客戶端的請求信息。
(3)接收伺服器反饋的信息。
(4)解釋伺服器的響應並將該響應傳回給客戶端。
網路代理雖然有很多優點,但由於使用代理後,自己對網路的所有請求都是通過代理伺服器這個中間人來實現的,所以有可能碰上存有惡意的人監聽你的輸入的內容。同樣,如果選擇的代理伺服器的帶寬比較小,使用代理還會降低網速。
總而言之,使用代理有利有弊,使用者要根據自身的情況來決定。但無論如何,選擇一個好的代理伺服器是非常重要的。
三、C#實現Web代理服務程序
經過了上面的介紹,我想大家對代理服務應該有了一個基本的認識,下面就讓我們通過一個實例來深入體會一下如何用C#實現Web代理服務。Web代理服務的功能順序是這樣的:
(1)偵聽埠,等待客戶端瀏覽器發送來的Web請求信息。
(2)接收到客戶端Web請求信息後,解析出目標Web伺服器的地址,並創建一個Socket實例,並以此實例連接Web伺服器上。
(3)通過創建的Socket傳送客戶端的Web請求數據包到Web伺服器的80埠。
(4)接收Web伺服器返回的頁面數據。
(5)把接收來的數據傳送到客戶端,從而實現Web代理。
客戶端對某個Web地址的瀏覽,可能要傳送很多的Web請求信息(比如網頁中的圖像、Flash等),為了更快更准確地處理這些信息,Web代理服務
程序通常採用多線程來處理每一個Web請求。細心的讀者可能會發現,處理每一個客戶端的Web請求信息,代理伺服器軟體都要使用二個Socket,一個是
用來接收/傳送客戶機的信息,一個是和Web伺服器進行交流。為了區分這二個Socket,我們把和伺服器對話的稱為「服務Socket」,和客戶端機器
對話的稱為「客戶Socket」。
下面就開始Web代理服務程序的編寫工作。這個實例包含三個部分內容:
1.創建一個Web代理類。
2.Web代理服務的類的實例化。
3.如何通過這個Web代理類的實例實現Web代理服務。
(一)創建一個Web代理類
具體操作步驟如下:
1.啟動Visual Studio.Net,依次選擇「文件」、「新建」、「項目」菜單後,在彈出「新建項目」對話框中將「項目類型」設置為
「Visual C#項目」,將「模板」設置為「Windows應用程序」,在「名稱」文本框中輸入「WebProxy」,在「位置」文本框中輸入
「E:VS.NET項目」,然後單擊「確定」按鈕,這樣項目便建立好了。
2.依次選擇菜單「項目」、「添加類」,將彈出「添加新項」對話框。
3.將「模板」設置為「類」。
4.在「名稱」文本框中輸入「Proxy」,單擊「打開」按鈕
5.在「解決方案資源管理器」窗口中,雙擊Proxy.cs文件,進入Proxy.cs文件的編輯界
6.在Proxy.cs源文件的開頭,添加下列代碼,下列代碼是導入Proxy.cs中要使用到的命名空間:
using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.IO;
7.用下列構造函數替代默認的構造函數。下面的代碼是在Proxy類中創建一個構造函數。Proxy類只有一個構造函數,並且這個構造函數只有一個參數,這個參數是Socket對象,它主要用來和客戶端進行數據交換,是一個「客戶Socket」:
public Proxy(Socket socket)
{
//
// TODO: 在此處添加構造函數邏輯
//
this.clientSocket = socket ;
}
8.在定義Proxy類代碼區中加入下列代碼,下列代碼是定義Proxy類中的使用的一些變數,這些變數主要是在後面的定義Run方法中使用。
Socket clientSocket;
Byte[] read = new byte[1024];
//定義一個空間,存儲來自客戶端請求數據包
Byte [] Buffer = null;
Encoding ASCII = Encoding.ASCII;
//設定編碼
Byte[] RecvBytes = new Byte[4096];
//定義一個空間,存儲Web伺服器返回的數據
9.創建Proxy類中的Run方法。Run方法是Proxy類中唯一的方法。其功能是從客戶端接收HTTP請求,並傳送到Web伺服器,然後從
Web伺服器接收反饋來的數據,並傳送到客戶端。為了實現這二個不同方面的數據傳送,Run方法中是通過兩個Socket實例來實現的。在編寫Run方法
的時候,要注意下面兩點:
(1)由於HTTP建立於TCP協議之上,所以創建的Socket實例應該使用TCP協議。下面代碼是創建可以傳送HTTP請求命令到Web伺服器和接收來自Web伺服器反饋來信息的Socket實例:
Socket IPsocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
(2)另外一個Socket是在代理服務程序偵聽埠號,接收連接請求時候得到的,所以應該以此Socket為參數,利用Proxy類中的構造函數來創建一個Proxy實例。此Socket實現從客戶端接收HTTP請求信息,並傳送數據到客戶端。
Socket創建和使用是實現Web代理軟體的關鍵。在構造函數代碼後面,輸入下列代碼:
public void Run()
{
string clientmessage = " " ;
//存放來自客戶端的HTTP請求字元串
string URL = " " ;
//存放解析出地址請求信息
int bytes = ReadMessage(read, ref clientSocket, ref clientmessage);
if (bytes == 0)
{
return ;
}
int index1 = clientmessage.IndexOf(' ');
int index2 = clientmessage.IndexOf(' ', index1 + 1);
if ((index1 == -1) || (index2 == -1))
{
throw new IOException();
}
string part1 = clientmessage.Substring(index1 + 1, index2 - index1);
int index3 = part1.IndexOf('/', index1 + 8);
int index4 = part1.IndexOf(' ', index1 + 8);
int index5 = index4 - index3;
URL = part1.Substring(index1 + 4, (part1.Length - index5) - 8);
try
{
IPHostEntry IPHost = Dns.Resolve(URL);
Console.WriteLine("遠程主機名: " + IPHost.HostName);
string [] aliases = IPHost.Aliases;
IPAddress[] address = IPHost.AddressList;
Console.WriteLine("Web伺服器IP地址:" + address[0]);
//解析出要訪問的伺服器地址
IPEndPoint ipEndpoint = new IPEndPoint(address[0], 80);
Socket IPsocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//創建連接Web伺服器端的Socket對象
IPsocket.Connect(ipEndpoint);
//Socket連Web接伺服器
if (IPsocket.Connected)
Console.WriteLine("Socket 正確連接!");
string GET = clientmessage;
Byte[] ByteGet = ASCII.GetBytes(GET);
IPsocket.Send(ByteGet, ByteGet.Length, 0);
//代理訪問軟體對伺服器端傳送HTTP請求命令
Int32 rBytes = IPsocket.Receive(RecvBytes, RecvBytes.Length, 0);
//代理訪問軟體接收來自Web伺服器端的反饋信息
Console.WriteLine("接收位元組數:" + rBytes.ToString());
String strRetPage = null;
strRetPage = strRetPage + ASCII.GetString(RecvBytes, 0, rBytes);
while (rBytes > 0)
{
rBytes = IPsocket.Receive(RecvBytes, RecvBytes.Length, 0);
strRetPage = strRetPage + ASCII.GetString(RecvBytes, 0, rBytes);
}
IPsocket.Shutdown(SocketShutdown.Both);
IPsocket.Close();
SendMessage(clientSocket, strRetPage);
//代理服務軟體往客戶端傳送接收到的信息
}
catch (Exception exc2)
}
//接收客戶端的HTTP請求數據
private int ReadMessage(byte [] ByteArray, ref Socket s, ref String clientmessage)
{
int bytes = s.Receive(ByteArray, 1024, 0);
string messagefromclient = Encoding.ASCII.GetString(ByteArray);
clientmessage = (String)messagefromclient;
return bytes;
}
//傳送從Web伺服器反饋的數據到客戶端
private void SendMessage(Socket s, string message)
{
Buffer = new Byte[message.Length + 1];
int length = ASCII.GetBytes(message, 0, message.Length, Buffer, 0);
Console.WriteLine("傳送位元組數:" + length.ToString());
s.Send(Buffer, length, 0);
}
至此,Proxy類的定義過程就完成了。
(二)利用Proxy類,實現Web代理
下面是利用Proxy類實現Web代理程序的具體實現步驟,Proxy類被定義在命名空間WebProxy中:
1.在Visual Studio .Net的代碼編輯器中打開Class1.cs文件,進入Class1.cs的代碼編輯界面。
2.在Class1.cs源文件的開頭導入下列命名空間:
using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.IO;
using System.Threading;
using WebProxy;
3.在Main函數中添加下列代碼,下列代碼是利用Proxy類,來實現Web代理程序:
const int port = 8000 ;
//定義埠號
TcpListener tcplistener = new TcpListener(port);
Console.WriteLine("偵聽埠號: " + port.ToString());
tcplistener.Start();
//偵聽埠號
while (true)
{
Socket socket = tcplistener.AcceptSocket();
//並獲取傳送和接收數據的Scoket實例
Proxy proxy = new Proxy(socket);
//Proxy類實例化
Thread thread = new Thread(new ThreadStart(proxy.Run));
//創建線程
thread.Start();
//啟動線程
}
保存上面的所有步驟,這樣一個簡單Web代理程序就算是完成了。此Web代理程序偵聽的是8000埠號。
(三)測試Web代碼程序
Web代理程序要通過二台計算機才能夠實現,其中的一台計算機運行Web代理程序充當Web代理伺服器,另外一台計算機充當客戶機,通過Web代理伺服器來瀏覽網頁。在確定Web代理軟體運行後,需要對客戶機進行進行必要的設置:
1.打開IE瀏覽器。
2.依次選擇「工具」、「Internet選項」,在彈出的「Internet選項」對話框中選擇「連接」頁面,單擊其中的「區域網設置」按鈕,在彈
出的「區域網(LAN)設置」對話框,選擇「為LAN使用代理伺服器(X),(這些設置不會應用於撥號和VPN連接)」多選框,並在其中的「地址」文本框
中輸入代理伺服器的IP地址,比如「10.138.198.213」,在「埠」文本框中輸入「8000」。
此時客戶端的設置就完成了。在確定IP地址為「10.138.198.213」的這台計算機已經運行上面介紹的Web代理程序後,打開客戶端的IE瀏覽器,並輸入要瀏覽的網址,就可以通過Web代理伺服器來瀏覽網頁了。
四、總結
至此一個簡單的Web代理服務軟體就算基本完成了。雖然代理服務的實現原理相對簡單,但具體實現還是很繁瑣的。網路代理是一個內容豐富,實現復雜的論
題,本節介紹的代理服務軟體,無論在實現的協議種類,還是實現的功能,都只能算很小的一部分。希望各位能夠通過本文的介紹,結合其他相關的知識,創造出功
能更強大、安全性更高,使用更穩定的網路代理服務程序來。
Ⅷ 推薦幾個代理伺服器
實話實說,由於近幾年網路管理制度的日趨完善,幾乎已經沒有什麼單位提供對外服務的代理伺服器(Proxy Server)了。即使需要代理伺服器,現在也是自己搭建伺服器,並不對外提供服務了。