如何把網站從http轉換成https
之前給大家介紹過什麼是http和https,以及他們之間有什麼區別(詳見:http和https有什麼區別?網站有沒有必要啟用https?)。相信很多看過介紹的小夥伴,對http和https各自的優缺點應該有了一定的瞭解。今天,給大家介紹如何把網站從http轉換成https站點。需要把網站轉換成https訪問形式的朋友,可以作為參考。
這裡還是先簡單的給大家介紹一下https的優點,不然,很多第一次聽說https的小夥伴可能會疑惑我們的網站為什麼要部署https。首先https是網路資料傳輸協議,也就是說www的網站在傳輸資料的時候,都必須遵守這個協議,遵守統一的標準的協議,有利於資料更好的傳送,而https則可以理解為是http的升級版或者安全版本。
https的有點如下:
1、部署https的網站更安全。
http是明文傳送資料,不安全。也就是說,在傳送資料的時候是明文的,沒有經過加密,如果黑客一旦截獲了這種明文資料,使用者的隱私就很有可能暴露,如:賬號、密碼等。而https在傳送資料的時候會對資料進行加密,就算黑客截獲了資料也是加密後的資料。如果黑客通過技術進行破解,會花費更多的時間和技術成本。因此,https加密資料可以大大降低使用者隱私洩露的風險,增加資料傳輸的安全性。
2、https可以降低網站被劫持、被映象的風險。
http網站是無狀態的,在傳送資料的時候也沒有對資料進行任何形式的加密,更不會對客戶端和伺服器進行反覆的驗證。這樣在傳送資料的時候,很可能被黑客利用,通過域名劫持等技術手段返回虛假的網站或資料給客戶端。造成使用者隱私洩露或財產損失。
而https採用了SSL安全機制進行通訊,以數字證書為基礎,在資料傳送的過程會對客戶端和瀏覽器進行反覆的驗證,確保通過域名可以訪問到你想要訪問的那臺伺服器,從而大大減少網站被劫持、被映象的風險。https原理如下:客戶端訪問伺服器->伺服器把數字證書+公用密匙 發給客戶端->客戶端驗證伺服器,確保訪問的是正確的伺服器(不是釣魚網站)->客戶端生產會話密匙並用公用密匙進行加密再次發給伺服器->伺服器用私人密匙進行解密(也就相當於驗證客戶端),驗證成功建立起一條安全的資料傳遞通道->伺服器把客戶端請求的資料打包加密傳送給客戶端->客戶端瀏覽器接收資料並解析。如果客戶端再次請求資料,則重複上述步驟。這種重複驗證的方式,確保通過域名可以訪問到正確的伺服器,從而大大降低網站被劫持、被映象的風險。
伺服器把數字證書+公用密匙 發給客戶端->客戶端驗證伺服器,確保訪問的是正確的伺服器(不是釣魚網站)->客戶端生產會話密匙並用公用密匙進行加密再次發給伺服器->伺服器用私人密匙進行解密(也就相當於驗證客戶端),驗證成功建立起一條安全的資料傳遞通道->伺服器把客戶端請求的資料打包加密傳送給客戶端->客戶端瀏覽器接收資料並解析。如果客戶端再次請求資料,則重複上述步驟。這種重複驗證的方式,確保通過域名可以訪問到正確的伺服器,從而大大降低網站被劫持、被映象的風險。
客戶端驗證伺服器,確保訪問的是正確的伺服器(不是釣魚網站)->客戶端生產會話密匙並用公用密匙進行加密再次發給伺服器->伺服器用私人密匙進行解密(也就相當於驗證客戶端),驗證成功建立起一條安全的資料傳遞通道->伺服器把客戶端請求的資料打包加密傳送給客戶端->客戶端瀏覽器接收資料並解析。如果客戶端再次請求資料,則重複上述步驟。這種重複驗證的方式,確保通過域名可以訪問到正確的伺服器,從而大大降低網站被劫持、被映象的風險。

客戶端生產會話密匙並用公用密匙進行加密再次發給伺服器->伺服器用私人密匙進行解密(也就相當於驗證客戶端),驗證成功建立起一條安全的資料傳遞通道->伺服器把客戶端請求的資料打包加密傳送給客戶端->客戶端瀏覽器接收資料並解析。如果客戶端再次請求資料,則重複上述步驟。這種重複驗證的方式,確保通過域名可以訪問到正確的伺服器,從而大大降低網站被劫持、被映象的風險。
伺服器用私人密匙進行解密(也就相當於驗證客戶端),驗證成功建立起一條安全的資料傳遞通道->伺服器把客戶端請求的資料打包加密傳送給客戶端->客戶端瀏覽器接收資料並解析。如果客戶端再次請求資料,則重複上述步驟。這種重複驗證的方式,確保通過域名可以訪問到正確的伺服器,從而大大降低網站被劫持、被映象的風險。
伺服器把客戶端請求的資料打包加密傳送給客戶端->客戶端瀏覽器接收資料並解析。如果客戶端再次請求資料,則重複上述步驟。這種重複驗證的方式,確保通過域名可以訪問到正確的伺服器,從而大大降低網站被劫持、被映象的風險。
客戶端瀏覽器接收資料並解析。如果客戶端再次請求資料,則重複上述步驟。這種重複驗證的方式,確保通過域名可以訪問到正確的伺服器,從而大大降低網站被劫持、被映象的風險。
3、部署https可以提高使用者體驗。
https部署成功的網站,在瀏覽器的訪問位址列會顯示一個帶有安全標識的一個綠色的小鎖,這樣可以提高使用者對這個網站的信任度及使用者體驗。
我們該如何部署https?
1、申請SSL證書。
https是以SSL證書為基礎,網站要想部署https,就必須為網站伺服器申請一個SSL證書。這裡提醒大家一下,有的伺服器支援SSL證書,有的則不支援。部分虛機目前可能不支援SSL證書的部署。
申請SSL證書的步驟如下:
①CSR檔案製作:申請SSL證書之前,需要製作CSR檔案,CSR,Certificate Signing Request,是製作SSL 證書的必要步驟。一個 CSR 檔案中描述了 SSL 證書持有人的資訊(如個人姓名或公司名稱)、聯絡地址等,用於驗證 SSL 證書和域名是同一個人持有,以確保網站的合法性。製作完成後向 SSL 證書提供商上傳這個檔案,以獲得最終的 SSL 證書。
②CA認證證書申請:將CSR提交給CA,CA一般有2種認證方式:
1)域名認證:一般通過對管理員郵箱認證的方式,這種方式認證速度快,但是簽發的證書中沒有企業的名稱;
2)企業文件認證:需要提供企業的營業執照。
也有需要同時認證以上2種方式的證書,叫EV ssl證書,這種證書可以使IE7以上的瀏覽器位址列變成綠色,所以認證也最嚴格。
2、安裝證書。
在收到CA的證書後,可以將證書部署上伺服器,一般APACHE檔案直接將KEY+CER複製到檔案上,然後修改httpD.CONF檔案;TOMCAT等,需要將CA簽發的證書CER檔案匯入JKS檔案後,複製上伺服器,然後修改SERVER.XML;IIS需要處理掛起的請求,將CER檔案匯入。這裡不會的小夥伴,可以詢問你們的技術,讓技術人員提供技術支援。
3、整改網站連結
SSL證書安裝成功後,你的伺服器就支援https了。這時我們要把自己網站上的全部連結修改成https的形式。例如,之前我們的首頁連結是:http://www.***.com/,則需要修改成 https://www.***.com/的形式。記著,是網站上的全部連結都需要修改,不要漏了。
4、全站做301轉向
網站連結整改以後,要做全站301跳轉。這樣可以大大減少網站權重的流失,讓百度更快、更好的抓取新的連結來替換舊的連結,同時讓新連結更快的恢復權重與排名。具體的301全站跳轉如何實現,大家可以自己百度一下,網上一大堆。實在不會的,可以問問你們的技術。
5、告訴百度抓取新連線替換舊連結。
理論上我們修改過連結後,百度蜘蛛會自動抓取識別新的連結形式,用於替換舊的連結。但是,這樣可能會延長週期。我們可以使用百度搜索資源平臺提供的https認證功能進行認證,讓百度更好的抓取、展現我們的https頁面。
謝羽點評:https確實在安全性方面有了大大的提高,可以極大的減少網站被劫持、被映象的風險。在資料傳送方面,也會對資料進行加密傳輸,這些都是https效能的優越性。但是,目前還有很大一部分站長都在持觀望態度,主要是因為:部署https有技術門檻,也會加大運營成本,在相容性方面很多小功能、外掛目前還不支援https。
我們謝羽SEO這個網站在寫這篇文章的時候,還沒有正式讓百度抓取,本想等啟用了https以後才讓百度正式抓取,後來詢問阿里工程師才知道目前的雲虛機暫不支援https,也就只能作罷。以上是對如何把網站從http轉換成https?相關介紹,希望對大家能夠有幫助。
作者:謝羽
原創來源:謝羽SEOhttp://www.xieyuseo.com/seoyh/17.html