一、HTTP和HTTPS的基本概念
HTTP:是互聯(lián)網(wǎng)上應(yīng)用最為廣泛的一種網(wǎng)絡(luò)協(xié)議,是一個客戶端和服務(wù)器端請求和應(yīng)答的標(biāo)準(zhǔn)(TCP),用于從WWW服務(wù)器傳輸超文本到本地瀏覽器的傳輸協(xié)議,它可以使瀏覽器更加高效,使網(wǎng)絡(luò)傳輸減少。
HTTPS:是以安全為目標(biāo)的HTTP通道,簡單講是HTTP的安全版,即HTTP下加入SSL層,HTTPS的安全基礎(chǔ)是SSL,因此加密的詳細(xì)內(nèi)容就需要SSL。
HTTPS協(xié)議的主要作用可以分為兩種:一種是建立一個信息安全通道,來保證數(shù)據(jù)傳輸?shù)陌踩涣硪环N就是確認(rèn)網(wǎng)站的真實性。
二、HTTP與HTTPS有什么區(qū)別?
HTTP協(xié)議傳輸?shù)臄?shù)據(jù)都是未加密的,也就是明文的,因此使用HTTP協(xié)議傳輸隱私信息非常不安全,為了保證這些隱私數(shù)據(jù)能加密傳輸,于是網(wǎng)景公司設(shè)計了SSL(Secure Sockets Layer)協(xié)議用于對HTTP協(xié)議傳輸?shù)臄?shù)據(jù)進行加密,從而就誕生了HTTPS。
HTTPS加密、加密、及驗證過程,如下圖所示:
簡單來說,HTTPS協(xié)議是由SSL+HTTP協(xié)議構(gòu)建的可進行加密傳輸、身份認(rèn)證的網(wǎng)絡(luò)協(xié)議,要比http協(xié)議安全。
HTTP 和 HTTPS 的相同點
大多數(shù)情況下,HTTP 和 HTTPS 是相同的,因為都是采用同一個基礎(chǔ)的協(xié)議,作為 HTTP 或 HTTPS 客戶端——瀏覽器,設(shè)立一個連接到 Web 服務(wù)器指定的端口。當(dāng)服務(wù)器接收到請求,它會返回一個狀態(tài)碼以及消息,這個回應(yīng)可能是請求信息、或者指示某個錯誤發(fā)送的錯誤信息。系統(tǒng)使用統(tǒng)一資源定位器 URI 模式,因此資源可以被唯一指定。而 HTTPS 和 HTTP 唯一不同的只是一個協(xié)議頭(https)的說明,其他都是一樣的。
HTTP 和 HTTPS 的不同之處
1.HTTP 的 URL 以 http:// 開頭,而 HTTPS 的 URL 以 https:// 開頭
2.HTTP 是不安全的,而 HTTPS 是安全的
3.HTTP 標(biāo)準(zhǔn)端口是 80 ,而 HTTPS 的標(biāo)準(zhǔn)端口是 443
4.在 OSI 網(wǎng)絡(luò)模型中,HTTP 工作于應(yīng)用層,而 HTTPS 工作在傳輸層
5.HTTP 無需加密,而 HTTPS 對傳輸?shù)臄?shù)據(jù)進行加密
6.HTTP 無需證書,而 HTTPS 需要認(rèn)證證書
HTTPS 如何工作?
使用 HTTPS 連接時,服務(wù)器要求有公鑰和簽名的證書。
當(dāng)使用 https 連接,服務(wù)器響應(yīng)初始連接,并提供它所支持的加密方法。作為回應(yīng),客戶端選擇一個連接方法,并且客戶端和服務(wù)器端交換證書驗證彼此身份。完成之后,在確保使用相同密鑰的情況下傳輸加密信息,然后關(guān)閉連接。為了提供 https 連接支持,服務(wù)器必須有一個公鑰證書,該證書包含經(jīng)過證書機構(gòu)認(rèn)證的密鑰信息,大部分證書都是通過第三方機構(gòu)授權(quán)的,以保證證書是安全的。
換句話說,HTTPS 跟 HTTP 一樣,只不過增加了 SSL。
HTTP 包含如下動作:
1.瀏覽器打開一個 TCP 連接
2.瀏覽器發(fā)送 HTTP 請求到服務(wù)器端
3.服務(wù)器發(fā)送 HTTP 回應(yīng)信息到瀏覽器
4.TCP 連接關(guān)閉
SSL 包含如下動作:
1.驗證服務(wù)器端
2.允許客戶端和服務(wù)器端選擇加密算法和密碼,確保雙方都支持
3.驗證客戶端(可選)
4.使用公鑰加密技術(shù)來生成共享加密數(shù)據(jù)
5.創(chuàng)建一個加密的 SSL 連接
6.基于該 SSL 連接傳遞 HTTP 請求
http切換到HTTPS
如果需要將網(wǎng)站從http切換到https到底該如何實現(xiàn)呢?
這里需要將頁面中所有的鏈接,例如js,css,圖片等等鏈接都由http改為https。
例如:http://www.xcyouyuan.com.cn 改為 http://www.xcyouyuan.com.cn