萬維網是一個分佈式的超媒體系統,客戶程序向服務器程序發出請求,服務器程序向客戶程序送回客戶所須要的萬維網文檔。
萬維網必須解決的幾個問題:
一、怎樣標誌分佈在整個因特網上的萬維網文檔?
答:萬維網使用統一的資源定位符URL(Uniform Resource Locator)來標誌萬維網上的各類文檔,並使每個文檔在整個因特網的範圍內具備惟一的標示符URL。
二、用怎樣的協議來實現萬維網上的各類連接?
答:使萬維網客戶程序與萬維網服務器程序之間的交互遵照嚴格的協議,超文本傳送協議HTTP(HyperText Transfer Protocol)。HTTP是一個應用層的協議,它使用TCP連接進行可靠的傳遞。
三、如何顯示不一樣風格的頁面?
答:超文本標記語言HTML
四、如何使用戶很方便的找到所需的信息?
答:搜索工具,好比搜索引擎。瀏覽器
URL
URL的通常形式由如下四個部分組成:
<協議>://<主機>:<端口>/<路徑>
協議通常爲http或https,其次是ftp(文件傳送協議FTP)
主機就是指該主機在因特網上的域名
端口和路徑,有時能夠省略,好比默認端口80,默認首頁等
例如 http://www.tsinghua.edu.cn
用戶使用URL並不是僅僅可以訪問萬維網的頁面,並且還可以經過URL使用其餘的因特網應用程序,如FTP或USENET新聞組等。服務器
HTTP
HTTP協議定義了瀏覽器(萬維網客戶端進程)怎樣向萬維網服務器請求萬維網文檔,以及服務器怎樣把文檔傳送給瀏覽器。HTTP是面向事務的應用層協議。
包括4步:
(瀏覽器提取a標籤的網址)
(DNS解析:瀏覽器向DNS請求解析www.tsinghua.edu.cn的IP地址,DNS反饋其IP給瀏覽器)
一、創建TCP鏈接(三次握手的前兩次)
二、HTTP請求報文(握手的第三次,把HTTP請求報文做爲TCP報文的數據發送給服務器)
三、HTTP響應報文
四、釋放TCP鏈接
(瀏覽器顯示響應的文本)cookie
HTTP協議自己是無鏈接的。使用了TCP鏈接,無需創建HTTP鏈接。
HTTP協議是無狀態的。第二次請求過程和第一次相同。這簡化了服務器的設計,使服務器更容易支持高併發。併發
HTTP/1.0 是非持續鏈接的
HTTP/1.1 是持續鏈接的。
所謂持續鏈接就是服務器再發送響應後,仍然再一段時間內保持這條鏈接。這並不侷限於傳送同一個頁面上連接的文檔,只要是這個服務器上的就行。
HTTP/1.1 協議有兩種工做方式
without pipelining 客戶接受到一個請求後才能發送下一個請求
with pipelining 客戶在接受到響應報文以前就能發送新的請求到服務器,減小了TCP鏈接的空閒時間,提升了效率。分佈式
代理服務器
proxy server,又稱爲 Web cache。
代理服務器把最近的一些請求和響應贊存在本地,當新請求到達時,若代理服務器發現這個請求與暫時存放的請求相同,就返回暫存的響應,不須要根據URL再次訪問因特網的資源。高併發
HTTP的報文結構,CR表明回車,LF表明換行
請求報文:
方法 URL 版本CRLF(請求行)
首部字段名: 值CRLF(首部行 )
CRLF
(實用主體,一般不用,可是post通常會用)工具
響應報文:
版本 狀態碼 短語CRLF(請求行)
首部字段名: 值CRLF(首部行 )
CRLF
(實用主體,有些響應報文不用)post
狀態碼 都是三位數字的,分爲5大類,共33種。
1xx 表示通知信息的,如請求收到了或正在處理
2xx 表示成功
3xx 表示重定向
4xx 表示客戶的差錯,如請求中有錯誤的語法或不能完成
5xx 表示服務器的差錯,如服務器失效沒法完成請求
好比
200 Success
202 Accepted
301 Moved permanently
302 Moved Temporarily
400 Bad Request
404 Not Found
詳細介紹http://baike.baidu.com/link?url=pmk-ihSjQD9fh9MQPifjB517O5bKnfdOcJnY0gcp1nP2ZfMTP5jOxvzbSgOUpnpe57sMbUMABZ1TTmYB3fWl1K學習
首部字段名有不少,經常使用的得了解,這裏先寫一些,之後更新
請求報文的首部字段名:
Connection: close(發送完文檔就能夠釋放鏈接)
Cookie: 1312321312312搜索引擎
響應報文的首部字段名:
Location: http://www.xyz.edu (新的URL,重定向時使用)
Set-cookie: 1312321312312 (服務器給瀏覽器設置cookie)
詳細的關於HTTP首部字段名的介紹
http://blog.csdn.net/linhaiman/article/details/7025336
HTML
如今是H5,正在學習當中,之後再補充
瀏覽器
這個,構造複雜,核心是HTML解釋器,對於想學好js的同窗,仍是有必要了解的。
全文檢索搜索引擎google的特色一、使用大量的小型機來代替少許的大型機,成功縮短訪問高峯時的查找時間二、核心技術PageRank,即網頁排名按照指向某個頁面的鏈接的個數進行排名,並使用了稀疏矩陣來簡化了計算量(百度是按照某個網頁訪問量的進行排名,以及,按照金錢進行排名)ok,做爲一個學渣,忽然明悟,果真是要學好數學的啊。