1、 用戶訪問網(wǎng)站的流程圖
2、DNS簡(jiǎn)介
DNS,全稱:Domain Name System
計(jì)算機(jī)網(wǎng)絡(luò)誕生時(shí)
通過IP地址訪問服務(wù)器。
IP地址不好記:IP地址。
發(fā)展到后來,就用hosts,所有的訪問服務(wù)器的主機(jī)hosts都加上解析記錄。
大家都把解析放到hosts,發(fā)生問題,每個(gè)人都要改HOSTS
增加網(wǎng)站記錄,如何才能知道呢?
發(fā)明了DNS
上網(wǎng)配置了DNS服務(wù)器,只要輸入域名地址,就會(huì)有DNS服務(wù)器告訴你IP是啥。
企業(yè)上網(wǎng)如何讓DNS知道他的域名,企業(yè)上網(wǎng)購(gòu)買域名,默認(rèn)管理平臺(tái)(默認(rèn)的DNS)
3、 DNS的功能
1)、可以將網(wǎng)站域名解析為對(duì)應(yīng)的IP地址。(把域名解析為對(duì)應(yīng)IP地址記錄,這個(gè)從域名到IP的解析過程,稱作A記錄。)
2)、設(shè)置CNAME別名記錄,這個(gè)別名解析功能常被CDN加速服務(wù)商應(yīng)用。
3)、設(shè)置MX郵件記錄,這個(gè)MX記錄功能,在購(gòu)買或搭建郵件服務(wù)時(shí)會(huì)被用到。
4)、設(shè)置PTR記錄,反向解析,即把IP地址解析為對(duì)應(yīng)的域名,和A記錄的解析相反,郵件服務(wù)等業(yè)務(wù)中會(huì)用到。
4、DNS系統(tǒng)的架構(gòu)
DNS系統(tǒng)的架構(gòu)類似于一顆樹(和Linux系統(tǒng)目錄結(jié)構(gòu)),他的定點(diǎn)也是根(“.”)只不過這個(gè)根是用點(diǎn)(.)來表示的,不是目錄的根斜線(/)。
image.png
5、 DNS解析流程
注意:企業(yè)不會(huì)自建外網(wǎng)DNS,選擇購(gòu)買域名默認(rèn)DNS,大企業(yè)花錢買DNSOPD,F(xiàn)5只能DNS解析
服務(wù)器端的開源工具:bind、powerdns、bind比較流行
大企業(yè)的內(nèi)網(wǎng)是用DNS,搭建bind。
DNS、郵件服務(wù) ------花錢買,不要搭建
6、 HTTP協(xié)議
HTTP協(xié)議,全稱HyperText Transfer Protocol,中文為超文本傳輸協(xié)議,是互聯(lián)網(wǎng)中最常用的一種網(wǎng)絡(luò)協(xié)議。
HTTP的重要應(yīng)用之一是WWW服務(wù),設(shè)計(jì)HTTP協(xié)議最初的目的就是提供一種發(fā)布和接受HTML(一種頁(yè)面標(biāo)記語言)頁(yè)面的方法。
HTTP協(xié)議是互聯(lián)網(wǎng)上常用的通信協(xié)議之一,他有很多的應(yīng)用,但最流行的就是用于WEB
瀏覽器和WEB服務(wù)器之間的通信,即WWW應(yīng)用或成WEB應(yīng)用。
WWW,全稱World Wide Web,常稱為Web,中文譯為“萬維網(wǎng)”。它是目前互聯(lián)網(wǎng)上最受用戶歡迎的信息服務(wù)形式。HTTP協(xié)議的WWW服務(wù)應(yīng)用的默認(rèn)端口為80,另外的一個(gè)加密的WWW服務(wù)應(yīng)用https的默認(rèn)端口為443
7、 HTTP協(xié)議版本
HTTP最主要的版本為1.0、1.1
7.1HTTP/1.0簡(jiǎn)介
是第一個(gè)得到廣泛使用的HTTP版本。1.0在0.9的基礎(chǔ)上增加了HTTP請(qǐng)求頭,可支持更多的請(qǐng)求方法,并且能對(duì)多媒體對(duì)象進(jìn)行處理。1.0是的包含生動(dòng)圖片Web頁(yè)面和交互式表格稱為可能,而正是這些頁(yè)面和表格促使互聯(lián)網(wǎng)被人們廣泛的接受。1.0規(guī)定瀏覽氣與服務(wù)器只保持短暫的連接,瀏覽器的每次請(qǐng)求都需要與服務(wù)器建立一個(gè)TCP連接,服務(wù)器完后才能請(qǐng)求處理后即斷開TCP連接,服務(wù)器不跟蹤每個(gè)客戶也不記錄過去的請(qǐng)求。
7.2 HTTP/1.1簡(jiǎn)介
1.1的重點(diǎn)是修復(fù)HTTP設(shè)計(jì)中的缺陷,從可擴(kuò)展性、緩存處理、帶寬優(yōu)化、持久連接、HOST頭、錯(cuò)誤通知、消息傳遞、內(nèi)容協(xié)商等多個(gè)方面都做了相關(guān)改進(jìn)。1.1是當(dāng)前互聯(lián)網(wǎng)主流的HTTP版本。
在連接方面1.1支持持久連接,在一個(gè)TCP連接上可以傳送多個(gè)HTTP請(qǐng)求和響應(yīng),減少了建立和關(guān)閉連接的消耗和時(shí)間延遲。
在請(qǐng)求頭方面,HTTP1.1增加了更多的請(qǐng)求頭和響應(yīng)頭,來增強(qiáng)HTTP功能。
7.3HTTP/1.0和HTTP/1.1的區(qū)別:
1)、1.0只定義了16個(gè)狀態(tài)響應(yīng)碼,而在1.1中增加了24個(gè)狀態(tài)響應(yīng)碼。
2)、1.0只能保持短暫的連接;而1.1支持持久連接
8、HTTP請(qǐng)求方法
在HTTP通信中,每個(gè)HTTP請(qǐng)求報(bào)文都包含一個(gè)方法。泳衣告訴WEB服務(wù)器端需要執(zhí)行具體的什么動(dòng)作。
常用的HTTP請(qǐng)求方法:
9、 HTTP狀態(tài)碼
HTTP狀態(tài)碼(HTTP Status Code)是用來表示W(wǎng)eb服務(wù)器響應(yīng)http請(qǐng)求狀態(tài)的數(shù)字代碼。每當(dāng)Web客戶端向Web服務(wù)器發(fā)送一個(gè)HTTP請(qǐng)求時(shí),Web服務(wù)器都會(huì)返回一個(gè)狀態(tài)響應(yīng)代碼。這個(gè)狀態(tài)是一個(gè)三位數(shù)字代碼。作用時(shí)告知Web客戶端此次的請(qǐng)求是否成功,或者是否要采取其他的工作方式。
不同范圍的狀態(tài)碼及其對(duì)應(yīng)的作用:
具體狀態(tài)碼的作用:
10、 HTTP請(qǐng)求報(bào)文格式說明
(1) 請(qǐng)求行
以GET/index.html HTTP/1.1為例說明請(qǐng)求報(bào)文的起始行信息詳情。
請(qǐng)求行是請(qǐng)求報(bào)文的第一行,用來說明客戶端想要做什么。內(nèi)容由請(qǐng)求方法字段、URL字段和HTTP協(xié)議版本字段共3個(gè)字段組成,它們之間用空格分隔。
image.png
(2) 請(qǐng)求頭部
請(qǐng)求頭部由關(guān)鍵字/值對(duì)組成,每行一對(duì),關(guān)鍵字和值用英文冒號(hào)“:”分隔。
請(qǐng)求頭部的作用是客戶端把請(qǐng)求的相關(guān)信息高速服務(wù)器。
常見的請(qǐng)求頭部信息
與請(qǐng)求報(bào)文相關(guān)的最常用的請(qǐng)求頭是Content-Type和Content-Length
(3) 空行
最后一個(gè)請(qǐng)求頭部信息之后是一個(gè)空行,發(fā)送回車符和換行符,通知Web服務(wù)器空行一下不會(huì)有請(qǐng)求頭部的信息了。
(4) 請(qǐng)求報(bào)文主體
請(qǐng)求報(bào)文主體中包括了要發(fā)送個(gè)Web服務(wù)器的數(shù)據(jù)信息;請(qǐng)求報(bào)文主體不會(huì)應(yīng)用于HTTP的GET命令方法,而是應(yīng)用于POST方法。POST方法適用于需要客戶填寫表單的場(chǎng)合。
11、 HTTP響應(yīng)報(bào)文格式說明
(1) 起始行
響應(yīng)報(bào)文的起始行,也叫狀態(tài)行,用來說明服務(wù)器響應(yīng)客戶端請(qǐng)求的狀況。
一般為協(xié)議及版本號(hào),數(shù)字狀態(tài)碼、狀態(tài)情況。例如:HTTP/1.1 200 OK
(2) 響應(yīng)頭部
和請(qǐng)求頭部類似,起始行的后面一直有若干個(gè)頭部字段。每個(gè)頭部字段都包含一個(gè)名字和一個(gè)值,兩者之間用冒號(hào)分隔。頭部結(jié)尾也是以一個(gè)空行結(jié)束。
(3) 空行
最后一個(gè)響應(yīng)頭部信息之后是一個(gè)空行,發(fā)送回車符合換行符,通知客戶端空行下文無頭部信息了。
(4) 響應(yīng)報(bào)文主體
響應(yīng)報(bào)文主體中裝載了要返回給客戶端的數(shù)據(jù)。這些數(shù)據(jù)可以是文本,也可以是二進(jìn)制的(圖片、視頻)。
響應(yīng)報(bào)文主體的html格式文本數(shù)據(jù)示例:
<html>
<head><title>oldboy’s blog</title></head>
<boby>
I am oldboy, mysql blog is http://oldby.blog.51cto.com
</boby>
</html>
lsdlocke
12、 HTTP報(bào)文請(qǐng)求應(yīng)答流程圖
13、HTTP協(xié)議原理及重點(diǎn)分析
HTTP協(xié)議屬于OSI模型中的第七層應(yīng)用層協(xié)議,HTTP協(xié)議的重要應(yīng)用就是WWW廢物應(yīng)用。
HTTP協(xié)議請(qǐng)求的工作流程如下:
1)、終端客在Web瀏覽器地址欄輸入訪問地址http://www.etiantian.org/index.html
2)、Web瀏覽器請(qǐng)求DNS服務(wù)器把域名www.etiantian.org轉(zhuǎn)換成Web服務(wù)器的IP地址,此處的解析過程就是DNS解析的原理流程。
3)、Web瀏覽器將端口號(hào)(默認(rèn)是80)從訪問地址(URL)中解析出來
4)、Web瀏覽器通過解析后的IP地址及端口號(hào)與Web服務(wù)器之間建立一條TCP連接。
5)、建立TCP連接后,Web瀏覽器向Web服務(wù)器發(fā)送一條HTTP請(qǐng)求報(bào)文,請(qǐng)求報(bào)文內(nèi)容格式及信息細(xì)節(jié)。
6)、Web服務(wù)器響應(yīng)并讀取瀏覽器的請(qǐng)求信息,然后返回一條HTTP響應(yīng)報(bào)文,響應(yīng)報(bào)文內(nèi)容格式及信息細(xì)節(jié)。
7)、Web服務(wù)器關(guān)閉http連接,關(guān)閉TCP連接,Web瀏覽器顯示訪問的網(wǎng)站內(nèi)容到屏幕上。
14、HTTP資源
14.1媒體類型
互聯(lián)網(wǎng)的數(shù)據(jù)有很多不同的數(shù)據(jù)類型,Web服務(wù)器會(huì)把通過Web傳輸?shù)拿總€(gè)對(duì)象都打上名為MIME類型(MIME type)的數(shù)據(jù)格式標(biāo)簽。最初設(shè)計(jì)MIME是為了解決在不同的電子郵件系統(tǒng)之間搬移報(bào)文時(shí)存在的問題。MIME在電子郵件系統(tǒng)中工作的非常好,后來,HTTP也支持了這個(gè)功能,用它來把數(shù)據(jù)描述并標(biāo)記不同的數(shù)據(jù)內(nèi)容類型。
14.2常見的MIME類型
14.3URL介紹
URL,全稱Uniform Resource Location 中文翻譯統(tǒng)一資源定位符,也被稱為網(wǎng)頁(yè)地址(網(wǎng)址)。如同在網(wǎng)絡(luò)上的門派,它是因特網(wǎng)上標(biāo)準(zhǔn)的資源唯一地址。通俗地說,URL是Internet上用來描述信息資源的字符串,主要用在各種WWW客戶端和服務(wù)器程序上。采用URL可以用來統(tǒng)一的格式來描述各種信息資源,包括文件、服務(wù)器的地址和目錄等。嚴(yán)格講,每個(gè)URL都是一個(gè)URI,它標(biāo)識(shí)一個(gè)互聯(lián)網(wǎng)資源,并制定對(duì)其進(jìn)行操作或得該資源的方法。
14.4 URL的格式
第一部分是協(xié)議,例如:http
第二部分是主機(jī)資源服務(wù)器IP地址或域名(端口號(hào)),例如:www.etinatian.org
第三部分是主機(jī)資源的具體地址,如目錄和文件名等,例如:oldboy/index.html
第一部分和第二部分之間用“://”符號(hào)隔開,第二部分和第三部分用“://”隔開。第一部分和第二部分是不可缺少的;第三部分可以省略。
14.4標(biāo)準(zhǔn)URL及說明
14.5 URI介紹
URI,全稱Uniform Resource Identifier ,中文翻譯為統(tǒng)一資源標(biāo)識(shí)符,是一個(gè)用于標(biāo)識(shí)某一互聯(lián)網(wǎng)資源名稱的字符串。這個(gè)字符串在世界范圍內(nèi)唯一標(biāo)識(shí)并定位某一個(gè)信息資源。互聯(lián)網(wǎng)上每個(gè)可用的數(shù)據(jù)資源,如HTML、圖片、視頻等皆通過統(tǒng)一資源標(biāo)識(shí)符進(jìn)行定位。
指向一個(gè)用戶郵箱的URI
網(wǎng)站URI說明
指向一個(gè)用戶郵箱的URI