SEO到底要不要做HTTPS?HTTPS對SEO的重要性
正方觀點
1、HTTPS具有更好的加密性能,避免用戶信息泄露;
2、HTTPS復雜的傳輸方式,降低網站被劫持的風險;
3、搜索引擎已經全面支持HTTPS抓取、收錄,並且會優先展示HTTPS結果;
4、從安全角度來說個人覺得要做HTTPS,不過HTTPS可以采用登錄后展示;
5、HTTPS綠鎖表示可以提升用戶對網站信任程度;
6、基礎成本可控,證書及服務器已經有了成型的支持方案;
7、網站加載速度可以通過cdn等方式進行彌補,但是安全不能忽略;
8、HTTPS是網絡的發展趨勢,早晚都要做;
9、可以有效防止山寨、鏡像網站;
反方觀點
1、HTTPS會降低用戶訪問速度,增加網站服務器的計算資源消耗;
2、目前搜索引擎只是收錄了小部分HTTPS內容;
3、HTTPS需要申請加密協議,增加了運營成本;
4、百度目前對HTTPS的優先展現效果不明顯,谷歌較為明顯;
5、技術門檻較高,無從下手;
6、目前站點不涉及私密信息,無需HTTPS;
7、兼容性有待提升,如robots不支持/聯盟廣告不支持等;
8、HTTPS網站的安全程度有限,該被黑還是被黑;
9、HTTPS維護比較麻煩,在搜索引擎支持HTTP的情況,沒必要做HTTPS;
HTTPS的優點:
安全性方面
在目前的技術背景下,HTTPS是現行架構下最安全的解決方案,主要有以下幾個好處:
1、使用HTTPS協議可認證用戶和服務器,確保數據發送到正確的客戶機和服務器;
2、HTTPS協議是由SSL+HTTP協議構建的可進行加密傳輸、身份認證的網絡協議,要比http協議安全,可防止數據在傳輸過程中不被竊取、改變,確保數據的完整性。
3、HTTPS是現行架構下最安全的解決方案,雖然不是絕對安全,但它大幅增加了中間人攻擊的成本。
HTTPS的缺點:
技術方面
1、相同網絡環境下,HTTPS協議會使頁面的加載時間延長近50%,增加10%到20%的耗電。此外,HTTPS協議還會影響緩存,增加數據開銷和功耗。
2、HTTPS協議的安全是有范圍的,在黑客攻擊、拒絕服務攻擊、服務器劫持等方面幾乎起不到什么作用。
3、最關鍵的,SSL 證書的信用鏈體系並不安全。特別是在某些國家可以控制 CA 根證書的情況下,中間人攻擊一樣可行。
成本方面
1、SSL的專業證書需要購買,功能越強大的證書費用越高。個人網站、小網站可以選擇入門級免費證書。
2、SSL 證書通常需要綁定 固定IP,為服務器增加固定IP會增加一定費用;
3、HTTPS 連接服務器端資源占用高較高多,相同負載下會增加帶寬和服務器投入成本;
問:SEO到底要不要做HTTPS?
答:必須做HTTPS
既然HTTPS有這么多缺點,那是不是就不該做呢,當然不是的,隨着技術的發展很多缺點是可以優化和彌補的。比如:打開速度問題完全可以通過CDN加速解決,很多IDC也在着手推出免費證書和一站式HTTPS搭建服務,HTTPS成本在未來將會大大縮小!
通過上面大多數人的觀點,我相信你也有一個你自己的答案,博主的答案是一定要做HTTPS,有人說,HTTPS是收費的,博主的網站HTTPS就是免費的,不是照樣可以用嗎?
關於HTTPS搜索引擎收錄的問題,博主也承認百度目前蜘蛛抓取HTTPS是有一些困難,但是這個缺點我們可以直接去百度站長平台,直接告訴百度我的網站支持https協議:(我的網站-站點管理-站點屬性:
站點協議Beta:若站點支持https協議,請點擊設置,若不支持可忽略此項);如下圖:
雖然說:百度公告說的是:已經支持HTTPS抓取,推送也支持HTTPS了,但是畢竟支持HTTPS程序出來較晚,肯定它還有不成熟的地方,不夠完善的地方,這些都需要去人為的彌補的;目前最佳的方法是:我們可以站長平台工具設置網站HTTPS協議,而且百度搜索引擎算法是優先展示HTTPS網頁的,像好搜,搜狗,神馬這些搜索引擎,目前技術還不成熟,因此,必須保證我們的網站HTTP也能訪問。例如:博主的網站:任何一個頁面,HTTP和HTTPS都可以訪問,而且不存在任何的跳轉,也未做重定向,但是權重依然不分散;依然是以HTTPS為主。
概念詳解:
HTTPS 協議就是 HTTP+SSL/TLS,即在 HTTP 基礎上加入 SSL /TLS 層,提供了內容加密、身份認證和數據完整性3大功能,目的就是為了加密數據,用於安全的數據傳輸。
HTTPS 通過3大功能增加了數據傳輸安全,但同時也給Web性能優化帶來了新的挑戰。
- HTTPS降低用戶訪問速度(需多次握手)
- 網站改用 HTTPS 以后,由 HTTP 跳轉到 HTTPS 的方式增加了用戶訪問耗時(多數網站采用 301、302 跳轉)
- HTTPS 涉及到的安全算法會消耗 CPU 資源,需要增加服務器資源(https 訪問過程需要加解密)
HTTP跳轉至HTTPS交互過程解析
1. 用戶在瀏覽器里輸入 http://www.domain.com/1213.gif 點擊回車以后,瀏覽器與服務器發生三次握手;
2. 服務器收到用戶的請求,響應 301 狀態碼,讓用戶跳轉到 HTTPS ,重新請求 https://www.domain.com/1213.gif;
3. 用戶重新發起 HTTPS 請求,再次與服務器進行三次 TCP 握手;
4. TCP 握手成功后,瀏覽器開始與服務器進行 TLS 握手。HSTS重定向技術
又拍雲采用了 HSTS(HTTP Strict Transport Security)技術,啟用HSTS后,將保證瀏覽器始終連接到網站的 HTTPS 加密版本。
1. 用戶在瀏覽器里輸入 HTTP 協議進行訪問時,瀏覽器會自動將 HTTP 轉換為 HTTPS 進行訪問,確保用戶訪問安全;
2. 省去301跳轉的出現,縮短訪問時間;
3. 能阻止基於 SSL Strip 的中間人攻擊,萬一證書有錯誤,則顯示錯誤,用戶不能回避警告,從而能夠更加有效安全的保障用戶的訪問。
TLS握手優化
在傳輸應用數據之前,客戶端必須與服務端協商密鑰、加密算法等信息,服務端還要把自己的證書發給客戶端表明其身份,這些環節構成 TLS 握手過程。
TLS False Start 功能
又拍雲采用了 False Start (搶先開始)技術,瀏覽器在與服務器完成 TLS 握手前,就開始發送請求數據,服務器在收到這些數據后,完成 TLS 握手的同時,開始發送響應數據。
開啟 False Start 功能后,數據傳輸時間講進一步縮短。
Session Identifier(會話標識符)復用
如果用戶的一個業務請求包含了多條的加密流,客戶端與服務器將會反復握手,必定會導致更多的時間損耗。或者某些特殊情況導致了對話突然中斷,雙方就需要重新握手,增加了用戶訪問時間。
因此又拍雲提供了 Session Identifier(會話標識符)復用功能
(1)服務器為每一次的會話都生成並記錄一個 ID 號,然后發送給客戶端;
(2)如果客戶端發起重新連接,則只要向服務器發送該 ID 號;
(3)服務器收到客戶端發來的 ID 號,然后查找自己的會話記錄,匹配 ID 之后,雙方就可以重新使用之前的對稱加密秘鑰進行數據加密傳輸,而不必重新生成,減少交互時間。
因此又可以進一步降低客戶端的訪問時間,提升用戶的訪問體驗。又拍雲已默認開啟此功能,無需特殊配置,抓包如下圖所示:
開啟OSCP Stapling,提高TLS握手效率
采用OCSP Stapling ,提升 HTTPS 性能。服務端主動獲取 OCSP 查詢結果並隨着證書一起發送給客戶端,從而客戶端可直接通過 Web Server 驗證證書,提高 TLS 握手效率。
由又拍雲服務器模擬瀏覽器向 CA 發起請求,並將帶有 CA 機構簽名的 OCSP 響應保存到本地,然后在與客戶端握手階段,將 OCSP 響應下發給瀏覽器,省去瀏覽器的在線驗證過程。由於瀏覽器不需要直接向 CA 站點查詢證書狀態,這個功能對訪問速度的提升非常明顯。
完全前向加密PFS,保護用戶數據,預防私鑰泄漏
非對稱加密算法 RSA,包含了公鑰、私鑰,其中私鑰是保密不對外公開的,由於此算法既可以用於加密也可以用於簽名,所以用途甚廣,但是還是會遇到一些問題:
(1) 假如我是一名黑客,雖然現在我不知道私鑰,但是我可以先把客戶端與服務器之前的傳輸數據(已加密)全部保存下來
(2)如果某一天,服務器維護人員不小心把私鑰泄露了,或者服務器被我攻破獲取到了私鑰
(3)那我就可以利用這個私鑰,破解掉之前已被我保存的數據,從中獲取有用的信息
所以為了防止上述現象發生,我們必須保護好自己的私鑰。
但如果私鑰確實被泄漏了,那我們改如何補救呢?那就需要PFS(perfect forward secrecy)完全前向保密功能,此功能用於客戶端與服務器交換對稱密鑰,起到前向保密的作用,也即就算私鑰被泄漏,黑客也無法破解先前已加密的數據。
實現此功能需要服務器支持以下算法和簽名組合:
(1)ECDHE 密鑰交換、RSA 簽名;
(2)ECDHE 密鑰交換、ECDSA 簽名;
又拍雲已默認支持上述組合,無需特殊配置,抓包如下圖所示:
HTTP/2協議支持
HTTP/2 是在 HTTPS 協議的基礎上實現的,所以只要使用又拍雲 HTTPS 加速服務的域名,都可免費享受 HTTP/2 服務,無需做任何特殊配置。全平台支持默認開啟 HTTP/2.0 , 無縫兼容各瀏覽器及服務器。
原文博客的鏈接地址:https://cnblogs.com/qzf/