HTTP 04 web 服務器

用單臺虛擬主機實現多個域名

HTTP/1.1 容許一臺 HTTP 服務器搭建多個 web 站點, 例如提供 web 託管服務的供應商, 能夠用一臺服務器爲多位客戶服務, 也能夠以每位客戶持有的域名運行各自不一樣的網站. 這是利用了虛擬主機的功能.web

即便物理層面只有一臺服務器, 但只要使用虛擬主機的功能, 則能夠假想已具有多臺服務器.緩存

客戶端使用 HTTP 協議訪問服務器時, 會常常採用相似 www.hackr.jp 這樣的主機名和域名.安全

在互聯網上, 域名經過 DNS 服務映射到 IP地址(地址解析)以後訪問目標網站, 可見, 當請求發送到服務器時, 已是以 IP 地址形式訪問了. 因此, 當一臺服務器內託管了 www.tricoder.jp 和 www.hackr.jp 兩個域名, 當收到請求時就須要弄清楚究竟要訪問哪一個域名.服務器

通訊數據轉發程序: 代理, 網關, 隧道

HTTP通訊時, 除客戶端和服務器之外, 還有一些用戶通訊數據轉發的應用程序, 例如 代理, 網關和隧道.網絡

這些應用程序和服務器能夠將請求轉發給通訊線路上的下一站服務器, 而且可以接收從那臺服務器發送的響應再轉發給客戶端.網站

代理: 是一種有轉發功能的應用程序, 它扮演了位於服務器和客戶端之間的中間人的角色.加密

使用代理服務器的理由: 利用緩存技術減小網絡帶寬的流量, 組織內部針對特定網站的訪問控制, 獲取訪問日誌 等.代理

代理基本上分爲兩類: 緩存代理, 透明/非透明 代理日誌

緩存代理: 代理轉發響應時, 會預先將資源的副本(緩存) 保存在代理服務器上. 當代理再次接收到對相同資源的請求時, 就能夠不從源服務器那裏獲取資源, 而是將以前緩存的資源做爲響應返回.code

透明代理: 轉發請求或響應時, 不對報文作任何加工的代理類型被稱爲透明代理, 反之, 被稱爲 非透明代理

網關:是轉發其餘服務器通訊數據的服務器, 接收從客戶端發送過來的請求時, 它就像本身擁有資源服務器同樣對請求進行處理, 有時客戶端可能都不會察覺, 本身的通訊目標是一個網關.

網關的工做和代理十分相似, 而網關能使通訊線路上的服務器提供非 HTTP 協議服務.

 

隧道: 中轉.加密, 隧道的目的是確保客戶端和服務器進行安全的通訊.

隧道自己不去解析 HTTP 請求, 隧道會在通訊雙方斷開鏈接時結束.

保存資源的緩存

緩存是指代理服務器和客戶端本地磁盤內保存的資源副本, 利用緩存可減小對源服務器的訪問, 緩存服務器是代理服務器的一種, 並歸類在緩存代理類型中. 

緩存有效期, 即便存在緩存, 也會由於客戶端的要求, 緩存的有效期等因素, 向源服務器確認資源的有效性. 若判斷緩存失效, 緩存服務器將會再次從源服務器上獲取"新"資源.

注意 這裏的緩存, 不是 Cookie, 不是一回事.

相關文章
相關標籤/搜索