HTTP訪問服務的相關解釋

來源:互聯網
上載者:User

標籤:瀏覽器   伺服器   ip地址   用戶端   記錄   

一、訪問網站的基本流程

    第一步:用戶端使用者在瀏覽器輸入www.51cto.com網站,斷行符號後,系統首先會尋找系統本地的DNS緩衝及hosts檔案資訊,確定是否存在www.51cto.com餘名對應的IP解析記錄,如果有就直接擷取IP地址,然後去訪問這個IP地址對應餘名www.51cto.com的伺服器。一般第一次請求的時候,DNS緩衝是沒有解析記錄的,而hosts躲在內部臨時測試時使用。

    第二步:如果用戶端本地DNS緩衝及hosts檔案沒有www.51cto.com餘名對應的解析記錄,那麼,系統會把瀏覽器的解析請求發送給用戶端本地設定的DNS伺服器位址(稱為LDNS)解析,如果LDNS伺服器的本機快取有對應的解析記錄就會直接返回IP地址給用戶端;如果沒有,則LDNS會負責繼續請求其他的DNS伺服器。

    第三步:LDNS從DNS系統的根開始請求對www.51cto.com餘名的解析,並針對各個層級的DNS伺服器系統進行一系列的尋找,最終會尋找到51cto.com網域名稱對應的授權DNS伺服器,而這個授權DNS伺服器正式企業購買網域名稱時用於管理網域名稱解析的伺服器,這個授權伺服器會有www.51cto.com對應的IP解析記錄。如果此時沒有,就表示企業的網域名稱管理員沒有為www.51cto.com網域名稱做解析設定,即網站還沒有架設好。

    第四步:51cto.com餘名的授權DNS伺服器會把www.51cto.com對應的最終IP解析記錄發給LDNS。

    第五步:LDNS把來自授權DNS伺服器的www.51cto.com對應的IP解析記錄發給用戶端瀏覽器,並且它會把該網域名稱和IP地址的對應解析緩衝起來,以便下一次更快的返回相同解析請求的記錄,這些緩衝記錄在指定的時間(DNS TTL)內不會到期。

    第六步:用戶端瀏覽器擷取了www.51cto.com對應的IP地址,接下來,瀏覽器會請求獲得IP地址對應的網站伺服器,網站伺服器接收到客戶的請求並響應處理(此處的處理可能是數百台叢集的伺服器系統,也可能是一台雲主機),將客戶請求的內容返回給用戶端瀏覽器。至此,一次訪問瀏覽網頁的完整過程也就完成了。

    附:

(1)查看windows用戶端的本機快取記錄:

ifconfig /displaydns

(2)清楚Windows用戶端本機快取DNS記錄:

ifconfig /flushdns

(3)Windows系統下的hosts網域名稱解析記錄位置:

C:\Windows\System32\drivers\etc\hosts

二、DNS系統解析基本流程

DNS簡介

A記錄----把餘名解析為對應的IP地址。

CNAME別名記錄--別名解析功能常備CDN加速服務商應用

MX郵件記錄--MX記錄功能,在購買或搭建郵件伺服器時會被用到

PTR記錄--反向解析,即把IP位址解析為對應網域名稱,和A記錄的解析相反,此功能在郵件服務業務中會用

650) this.width=650;" src="http://s5.51cto.com/wyfs02/M02/88/56/wKiom1fvvOzj2WqVAACIHoN53c0064.jpg-wh_500x0-wm_3-wmp_4-s_1324839642.jpg" title="123.jpg" alt="wKiom1fvvOzj2WqVAACIHoN53c0064.jpg-wh_50" />

DNS解析流程圖

650) this.width=650;" src="http://s4.51cto.com/wyfs02/M02/88/56/wKiom1fvv2niTTGgAAFPQz6r41k630.jpg-wh_500x0-wm_3-wmp_4-s_2563572070.jpg" title="123.jpg" alt="wKiom1fvv2niTTGgAAFPQz6r41k630.jpg-wh_50" />


通過dig命令來實踐理解DNS解析流程

[[email protected] ~]# dig +trace www.51cto.com; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.17.rc1.el6_4.6 <<>> +trace www.51cto.com;; global options: +cmd.            47942    IN    NS    j.root-servers.net..            47942    IN    NS    f.root-servers.net..            47942    IN    NS    b.root-servers.net..            47942    IN    NS    h.root-servers.net..            47942    IN    NS    e.root-servers.net..            47942    IN    NS    g.root-servers.net..            47942    IN    NS    k.root-servers.net..            47942    IN    NS    l.root-servers.net..            47942    IN    NS    m.root-servers.net..            47942    IN    NS    i.root-servers.net..            47942    IN    NS    c.root-servers.net..            47942    IN    NS    a.root-servers.net..            47942    IN    NS    d.root-servers.net.;; Received 228 bytes from 192.168.0.1#53(192.168.0.1) in 54 ms## a-m一共13個DNS伺服器,j.root-servers.net根DNS負責了此處的解析com.            172800    IN    NS    a.gtld-servers.net.com.            172800    IN    NS    b.gtld-servers.net.com.            172800    IN    NS    c.gtld-servers.net.com.            172800    IN    NS    d.gtld-servers.net.com.            172800    IN    NS    e.gtld-servers.net.com.            172800    IN    NS    f.gtld-servers.net.com.            172800    IN    NS    g.gtld-servers.net.com.            172800    IN    NS    h.gtld-servers.net.com.            172800    IN    NS    i.gtld-servers.net.com.            172800    IN    NS    j.gtld-servers.net.com.            172800    IN    NS    k.gtld-servers.net.com.            172800    IN    NS    l.gtld-servers.net.com.            172800    IN    NS    m.gtld-servers.net.;; Received 491 bytes from 198.97.190.53#53(198.97.190.53) in 352 ms##解析com的一共有13個DNS伺服器,.com的a.gtld-servers.net負責了此處解析51cto.com.        172800    IN    NS    ns1.dnsv2.com.51cto.com.        172800    IN    NS    ns2.dnsv2.com.;; Received 249 bytes from 192.54.112.30#53(192.54.112.30) in 272 ms##解析  ns1.dnsv2.com負責了最終A記錄解析www.51cto.com.        600    IN    CNAME    web.dns.51cto.com.web.dns.51cto.com.    600    IN    CNAME    gf.dns.51cto.com.gf.dns.51cto.com.    600    IN    A    218.11.0.9151cto.com.        86400    IN    NS    ns2.dnsv2.com.51cto.com.        86400    IN    NS    ns1.dnsv2.com.;; Received 162 bytes from 115.236.151.178#53(115.236.151.178) in 139 ms

附:

    常用的HTTP要求方法

HTTP方法 作用描述
GET
用戶端請求指定資源資訊,伺服器返回指定資源
HEAD
只請求響應保溫中的HTTP首部
POST
將用戶端的資料提交到伺服器,例如註冊表單
PUT
用從用戶端向伺服器傳送的資料取代指定的文檔內容
DELETE
請求伺服器刪除Request-URI所標識的資源
MOVE
請求伺服器將指定的頁面移至另一個網路地址


不同範圍的狀態代碼及其對應的應用

狀態代碼範圍 作用描述
100-199
用於指定用戶端響應相應的某些動作
200-299
用於表示請求成功
300-399
用於已經移動的檔案,並且常被包含在定位頭資訊中指定新的地址資訊
400-499
用於指出用戶端的錯誤
500-599
用於指出伺服器的錯誤



工作環境中常見的狀態代碼及對應的作用
狀態碼
詳細描述說明
200-OK
伺服器成功返回網頁,這是成功的HTTP請求返回標準狀態代碼
301-Moved Permanently
永久跳轉,所請求的網頁將永久跳轉到被設定的新位置,例如:從www.baidu.com跳轉到www.qq.com
403-Forbidden
禁止訪問,雖然這個請求是合法的,但是伺服器端因為匹配了預先設定的規則而拒絕響應用戶端的請求,此類問題一般為伺服器或伺服器許可權配置不當所致
404-Not Found
伺服器找不到用戶端請求的指定頁面,可能是用戶端請求了伺服器上不存在的資源所致
500-Internal Server Error
內部服務錯誤,伺服器遇到了意料不到的情況,不能完成客戶的請求。這是一個籠統的報錯,一般為伺服器的設定或內部程式問題導致。例如:SELinux開啟,而有沒有為HTTP設定規則許可,用戶端訪問就是500
502-Bad Gateway
壞的網關,一般是Proxy 伺服器請求後端服務時,後端服務不可用或沒有完成響應閘道伺服器。這通常為反向 Proxy伺服器下面的節點出問題所致
503-Service Unavailable
服務當前不可用,可能是伺服器超載或停機維護導致,或者是反向 Proxy伺服器後面沒有可以提供服務的節點
504-Gateway Timeout
網關逾時,一般是網關Proxy 伺服器請求後端服務時,後端服務沒有在特定的時間內完成處理請求。多數是伺服器過載導致沒有在指定時間內返回資料給前端Proxy 伺服器


可以通過curl 命令在Linux命令列查看HTTP響應的數字狀態代碼:

[[email protected] ~]# curl -I wwww.baidu.comHTTP/1.1 302 Found   ##302 即為狀態代碼 Date: Sat, 01 Oct 2016 14:56:01 GMTServer: ApacheLocation: http://www.baidu.com/Cache-Control: max-age=86400Expires: Sun, 02 Oct 2016 14:56:01 GMTConnection: Keep-AliveContent-Type: text/html; charset=iso-8859-1[[email protected] ~]# curl -I -s -w %{http_code} -o /dev/null www.baidu.com200   ##200即是狀態代碼



本文出自 “Richy的營運日誌” 部落格,請務必保留此出處http://richylu.blog.51cto.com/1481674/1858330

HTTP訪問服務的相關解釋

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.