松鼠書讀書筆記(四) http proxy

2021-09-01 15:02:15 字數 1410 閱讀 3538

本章說的是http proxy,也就是http**伺服器

其實我個人的理解,覺得這些概念(**、快取、web server)很模糊,只能說是rfc2616上給出的一種指導性的分類,並不是有很明確的含義的,也沒有嚴格的區分

這些概念,我認為都是網際網路上的一些節點,或者說是http應用而已,沒有絕對的分類和區別。

比如說,我開發了乙個私有的**伺服器,部署在internet的入口處,然後配置瀏覽器請求往這個私有**伺服器上發。這個proxy有快取的功能,如果是已經有的資源,就不向伺服器發起請求了,那我這個proxy,也就可以認為是乙個cache。同時,它都能處理http request,並生成http response了,難道還不能算乙個web server嗎。所以這個私人**,同時是proxy、cache、web server,如果我再給它新增乙個郵箱功能,那麼它還是乙個http/pop3的gateway

所以我認為,http規範中對http部件的分類,只能作為參考而已

這一章介紹了http proxy的一些主要功能

1、資源filter

這個很好理解,很多公司為了限制員工訪問網際網路,都搞乙個公司**,把白名單之外的請求都過濾了

2、防火牆,小本本

同理,從安全角度考慮,在lan和wan中間放乙個proxy,然後就可以在proxy上部署一些防毒軟體,流量監控之類的東西

3、快取

4、反向**(reverse proxy)

很多大型的網際網路**都會這麼做,一方面可以增強效能,另一方面可以保護server的安全

5、轉碼器(transcoder)

比如同乙個頁面,在返回給client agent之前,經過轉碼器轉一下。如果client agent是pc瀏覽器則不作處理;如果是手機,就轉成適合手機瀏覽器閱讀的內容

很明顯transcoder這裡就需要做很多邏輯處理

6、匿名者

**http request時,把user-agent首部等篡改,來保護真實客戶端的安全。如果個人pc被黑客攻擊了作為跳板,那有時候就成了黑客的匿名者**

總結一下http proxy的各種作用,可以看出來,其實本質都是一樣的。在真正的client agent,和最終的server中,部署一些http應用,對http request或者http response做一些處理,這就是http proxy的作用

在現實中也有很多體現,比如電信寬頻,想連到網通伺服器打網遊,為了不卡,就花錢買個**。當然這個一般不會是http**,但是原理都是一樣的,本來直接發到網通伺服器的訊息,都會發到**伺服器上,由**伺服器來**,再把網通伺服器的響應給回客戶端。**伺服器一般是雙線的,所以玩遊戲會比你直接連到網通伺服器流暢一些

還有我97年那會通過貓撥號上網,國外的**是不能上的,那麼就可以找一些**伺服器,就能上國外的**了

還有有些國外的伺服器,會ban掉大陸ip,那這個時候也可以找個海外伺服器做**,就可以連上去了

松鼠書讀書筆記(五) cookie

http是請求響應模型,所以最初http server幾乎沒有資訊可以判斷請求來自哪個client。為了解決這個問題,就需要client識別技術 cookie就是client在傳送請求的時候,會額外傳送一些鍵值對到server,這樣server讀取了這些資訊,就可以識別client了 server給...

松鼠書讀書筆記(二) HTTP報文

第2章講url的,沒什麼可記的,直接跳過 1 報文的一些術語 在規範裡有這樣2組術語,本身不太重要,但是需要知道它們的意思,才能理解後面的內容 一組是流入 流出,即inbound和outbound。流入 總是指http message從client agent發往server 流出 總是指http ...

讀書筆記四

軟體需求 尋找需求 1.獲取和引導需求 elicitation 軟體團隊需要找到軟體的利益相關者,了解和挖掘他們對軟體的需求,引導他們表達出對軟體的需求。2.分析和定義需求 analysis specification 這是指對從各個方面獲取的需求進行規整,定義需求的內涵,從各個角度將需求量化 需求...