萬維網基礎知識總結

一.什麼是萬維網:

    萬維網是一個大規模的,聯機式的信息存儲所,英文簡稱Web。

二.超文本,超媒體:

    所謂超文本是指包括制定其它文檔的鏈接的文本(text)。

    所謂超媒體是指出了包涵文檔text之外,還包含其它表示方式的信息,如圖形,圖像,聲音,動畫,視頻圖像等。

三.實現萬維網需要的幾個必須解決的關鍵問題

    1.怎樣標誌分佈在整個互聯網上的萬維網文檔?-----》URL

    URL(統一資源定爲符)

    資源位置和訪問這些資源的方法;資源地址;互聯網上的所有資源,都有一個唯一的確定的URL。

    URL的一般形式由一下四個部分組成:

    <協議>://<主機>:<端口>/<路徑>

    http://localhost:8080/工程路徑

    2.用什麼樣的協議來實現萬維網上的各種鏈接?-----》HTTP

    HTTP(超文本傳輸協議)

    1)對客戶端和服務器端之間數據傳輸的格式規範,格式簡稱爲“超文本傳輸協議”。

    2)HTTP協議本身是無鏈接:爲了保證數據的可靠傳輸,HTTP使用了面相鏈接的TCP作爲運輸層協議。因此不用考慮數據在              傳輸過程中被丟棄後又怎樣被重傳。

    3)HTTP協議是無狀態的(stateless):服務器不記錄用戶是否訪問過也不記錄訪問次數。

         簡化了服務器的設計,是服務器更容易支持大量併發的HTTP請求。

         無狀態協議對於事務處理沒有記憶能力。缺少狀態意味着如果後續處理需要前面的信息,那是無法取到的。

         爲了解決這個問題:通過Cookie;通過Session會話保存。

    4)HTTP協議請求一次萬維網文檔所需要的時間:

在這裏插入圖片描述

    3.怎樣使不同作者創作的不同風格的萬維網文檔,都能在互聯網上的各種主機上顯示出來,同時使用用戶清楚的知道在什麼地           方存在着鏈接?-----》HTML

四.HTTP的報文結構

    1)請求報文--從客戶向服務器發送請求報文。

        請求行:包含請求方法;URI;HTTP版本信息

        請求首部字段

        請求內容實體

        例子:

        GET  /dir/index/htm  HTTP/1.1          {請求行使用了相對URL}

        Host:www.baidu.com                      {此行是首部行的開始。這行給出主機的域名}

        Connection:close                           {告訴服務器發送完請求的文檔後就可釋放鏈接}

        User-Agent:Mozilla/5.0                  {表明用戶代理是實用火狐瀏覽器Firefox}

        Accept-Language:cn                     {表示擁護希望優先的到中文版本的文檔}

    2)響應報文--從服務器到客戶的回答。

        狀態行:包含HTTP版本;狀態碼;狀態碼的原因短語

        響應首部字段

        響應內容實體

        例子:

        HTTP/1.1  301   Moved  Permanently              {永久性地轉移了}

        Location:http://www.baidu.com/ee/index.html  {新的URL}

        狀態碼:都是三位數字,分5大類。

                1xx:表示信息性代碼,標示客戶端應該採取的其他動作,請求正在進行。

                2xx:表示客戶請求成功,如接受或知道了。

                3xx:表示重定向,如要完成請求還必須採取到進一步的行動。

                4xx:表示由客戶端引發的錯誤,如請求中有錯誤的語法或不能完成。

                5xx:表示由服務器端引發的錯誤,如服務器失效無法完成請求。

200:請求被正常處理

204:請求被受理但沒有資源可以返回

206:客戶端只是請求資源的一部分,服務器只對請求的部分資源執行GET方法,相應報文中通過Content-Range指定範圍的資源。

301:永久性重定向

302:臨時重定向

303:與302狀態碼有相似功能,只是它希望客戶端在請求一個URI的時候,能通過GET方法重定向到另一個URI上

304:發送附帶條件的請求時,條件不滿足時返回,與重定向無關

307:臨時重定向,與302類似,只是強制要求使用POST方法

400:請求報文語法有誤,服務器無法識別

401:請求需要認證

403:請求的對應資源禁止被訪問

404:服務器無法找到對應資源

500:服務器內部錯誤

503:服務器正忙

五.HTTP協議中有哪些請求方式?

    GET:用於請求訪問已經被URI(統一資源標識符)識別的資源,可以通過URL傳參給服務器。

    POST:用於傳輸信息給服務器,主要功能與GET方法類似,但一般推薦使用POST方式。

    PUT:傳輸文件,保文主體中包含文件內容,保存到對應URI位置。

    HEAD:獲得報文首部,與GET方法類似,只是不返回報文主體,一般用於驗證URI是否有效。

    DELETE:刪除文件,與PUT方法相反,刪除對應URI位置的文件。

    OPTIONS:查詢響應URI支持的HTTP方法。

    注意:GET方法和POST方法的區別!!!!

        區別一:

                1)get傳輸數據通過URL請求,以filed = value 的形式,置於URL後,並用“?”連接,多個請求數據間用“&”連                              接,如:http://127.0.0.1/Test/login.action?name=admin&password=admin,這個過程用戶是可見的。

                2)post傳輸數據通過Http的post機制,將字段與對應值封裝在請求實體中發送給服務器,這個過程對用戶是不可見                          的。

        區別二:

                1)get重點在從服務器上獲取資源。

                2)post重點在向服務器發送數據。

        區別三:

                1)get傳輸的數據量小,因爲受URL長度限制,但效率較高。

                2)post傳輸大量數據,所以上傳文件時只能用post方式。

        區別四:

                1)get是不安全的,因爲URL是可見的,可能會泄露私密信息。

                2)post較get安全性較高。

        區別五:

                1)get方式只能支持ASCII字符,向服務器傳的中文字符可能會亂碼。

                2)post支持標準字符集,可以正確傳遞中文字符。

六.HTTP與HTTPS優缺點?

        通信使用明文不加密,內容可能被竊聽,也就是被抓包分析。

        不驗證通信方身份,可能遭到僞裝

        無法驗證報文完整性,可能被篡改

        HTTPS就是HTTP加上加密處理(一般是SSL安全通信線路)+認證+完整性保護

七.HTTP優化

        利用負載均衡優化和加速HTTP應用

        利用HTTP  Cache來優化網站

八.HTTP協議有哪些特徵?

        1)支持客戶/服務器模式;

        2)簡單快速;

        3)靈活;

        4)無連接;

        5)無狀態;

九.網絡傳輸的過程:

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章