
近兩年的情況表明,網(wǎng)站啟用https已是大勢(shì)所趨。但由于懶,一直沒有動(dòng)作。在David Yin的激勵(lì)下,終于在人際稀少的春節(jié)前夕把SEO每天一貼轉(zhuǎn)換成https了。
其實(shí)下面的文章內(nèi)容你也可以不用閱讀,因?yàn)楹芏嗄憧床欢?如果你的網(wǎng)站想改造為https的話可以直接加我的微信805329900,我們公司現(xiàn)在承接幫助企業(yè)改造為https。一共收費(fèi)300元,也不貴,是一次性的費(fèi)用
使用https加密目前看有利有弊。利,首先是安全,減少被劫持、篡改的機(jī)會(huì)。弊,主要是速度上的,由于證書驗(yàn)證、多次握手、CPU消耗等原因,https頁(yè)面速度會(huì)被拖慢一點(diǎn)。但https無(wú)疑是未來(lái)趨勢(shì)。
改為https對(duì)SEO按說(shuō)應(yīng)該有好處,不過(guò)實(shí)際情況如何還有待驗(yàn)證。Google方面早就表明https是排名因素之一,雖然只是個(gè)很小因素。百度以前曾經(jīng)提到過(guò),百度不會(huì)主動(dòng)抓取https頁(yè)面,但2015年百度站長(zhǎng)平臺(tái)發(fā)布消息,百度對(duì)https頁(yè)面優(yōu)先收錄、優(yōu)先排名:
從相關(guān)性的角度,百度搜索引擎認(rèn)為權(quán)值相同的站點(diǎn),采用https協(xié)議的頁(yè)面更加安全,排名上會(huì)優(yōu)先對(duì)待。
此次技術(shù)升級(jí)之后,百度搜索將同一個(gè)域名的http版和https版作為一個(gè)站點(diǎn)來(lái)處理,優(yōu)先收錄https頁(yè)面;
從http改到https后的一段時(shí)間,搜索引擎需要重新抓取、判斷、計(jì)算,收錄,排名和流量都可能有起伏。說(shuō)是起伏,恐怕主要是下降。雖然從http版本全站做了301轉(zhuǎn)向到https版本,我們都知道,百度對(duì)301轉(zhuǎn)向處理很慢、很保守,需要持續(xù)觀察什么時(shí)候能完成正確判斷并傳遞權(quán)重。Google也表明過(guò),301轉(zhuǎn)向不能完全傳遞權(quán)重,是有損耗的。
就SEO每天一貼來(lái)說(shuō),另一個(gè)可能造成麻煩的是,這個(gè)網(wǎng)站以前做過(guò)多次URL路徑變化和301轉(zhuǎn)向,還換過(guò)域名,現(xiàn)在再多加一次301轉(zhuǎn)向,多層轉(zhuǎn)向有可能造成搜索引擎不愿意跟蹤,不能完全傳遞權(quán)重。本博客外鏈增加最多的時(shí)候還是剛剛開博的頭兩年,那時(shí)候的鏈接都是指向最早的URL的,到現(xiàn)在的https新URL,經(jīng)過(guò)了3-4次轉(zhuǎn)向,這恐怕是搜索引擎會(huì)跟蹤的轉(zhuǎn)向數(shù)的上限了。所以,可能會(huì)丟失一部分無(wú)法挽回的外鏈效果。
接下來(lái),本博客的主要關(guān)鍵詞排名可能會(huì)下降甚至消失一段時(shí)間,能不能恢復(fù)也是未知之?dāng)?shù)。但長(zhǎng)痛不如短痛,既然是趨勢(shì),無(wú)論如何,也得跟進(jìn)。
簡(jiǎn)單說(shuō)一下把網(wǎng)站從http轉(zhuǎn)換到https的過(guò)程,也許對(duì)讀者有借鑒意義。下面只是我做轉(zhuǎn)換的過(guò)程,并不是最優(yōu)方法,按說(shuō)應(yīng)該先在單獨(dú)的服務(wù)器上測(cè)試https版本,我并沒有。公司網(wǎng)站最好更謹(jǐn)慎點(diǎn)。
購(gòu)買SSL證書
這個(gè)是必須的,現(xiàn)在價(jià)格并不貴。到David Yin帖子看一下,便宜的3年只是幾十塊錢。安裝SSL證書的技術(shù)問(wèn)題,無(wú)法在這討論了,不明白的問(wèn)技術(shù)人員吧。
備份、備份
這個(gè)也是必須的。對(duì)SSL安裝、服務(wù)器配置不熟悉的站長(zhǎng)來(lái)說(shuō),轉(zhuǎn)換過(guò)程不一定是那么順利的。
新版本代碼改動(dòng)
SSL證書安裝后,https版本就可以訪問(wèn)了。原來(lái)網(wǎng)站上的所有URL都需要改到https版本,包括鏈接、圖片、JS等,所以可能需要修改文章數(shù)據(jù)庫(kù)、模板、插件等。
本博客使用WordPress,要在后臺(tái)把博客地址改為https版本:
怎樣把網(wǎng)站從http轉(zhuǎn)換成https 站長(zhǎng) 好文分享 第1張
這樣,絕大部分導(dǎo)航中的鏈接就由WP系統(tǒng)自動(dòng)改為https版本了。但很可能還有一些導(dǎo)航性質(zhì)的鏈接是硬編碼在模板中的,比如這個(gè)博客帖子下面的版權(quán)聲明,那是人工寫在模板里的,別忘了改。
帖子正文中人工加的內(nèi)部鏈接也需要自己改。如果使用了phpMyadmin,用下面指令跑一下數(shù)據(jù)庫(kù)就行了:
update wp_posts set post_content = replace(
post_content, ‘http://www.seozac.com/’,
‘https://www.seozac.com/’);
帖子里的圖片路徑也就同時(shí)改了。
如果沒有使用數(shù)據(jù)庫(kù)管理工具,寫個(gè)簡(jiǎn)單php程序運(yùn)行一下也可以。
因?yàn)橹皇怯弥噶钤跀?shù)據(jù)庫(kù)執(zhí)行了一下,沒有,也沒辦法人工檢查所有頁(yè)面,可能有漏掉的鏈接、圖片之類的,讀者要是發(fā)現(xiàn)了,麻煩告訴我一下。
這里我還遇到了些沒解決的問(wèn)題。新浪微博組件和百度分享按鈕組件貌似都不支持https,原理上應(yīng)該可以把JS下載下來(lái)放到自己服務(wù)器上,但暫時(shí)沒時(shí)間弄這個(gè),先拿掉了。
檢查新版本頁(yè)面源代碼
訪問(wèn)一下https版本頁(yè)面,包括首頁(yè)、欄目頁(yè)、內(nèi)頁(yè)、sitemap,查一下源代碼,看看還有沒有http地址的存在,不僅頁(yè)面可見部分,還得看看head部分,JS等,比如head里的canonical標(biāo)簽是否改到https版本了?程序生成的sitemap里的URL是否改為https版本了?
全站301轉(zhuǎn)向
全站做http到https的301轉(zhuǎn)向。LAMP服務(wù)器為例,在.htaccess文件中加:
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.seozac.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^seozac.com [NC]
RewriteRule ^(.*)$ https://www.seozac.com/$1 [L,R=301]
這個(gè)代碼只是舉例,也是我的博客用的實(shí)際代碼,還有其他寫法也可以,只要實(shí)現(xiàn)了301就行。
訪問(wèn)原h(huán)ttp版本頁(yè)面,檢查301是否生效。
百度站長(zhǎng)平臺(tái)和Google Search Console
搜索引擎抓取301轉(zhuǎn)向后,應(yīng)該可以自行判斷網(wǎng)站已經(jīng)從http轉(zhuǎn)到https了。另一個(gè)通知搜索引擎的方法是通過(guò)站長(zhǎng)平臺(tái)。
在Google Search Console中,把https網(wǎng)站加入并驗(yàn)證,不需要使用Change of Address功能。可以在http及https版本的賬號(hào)下,用Fetch as Googlebot功能看看兩種版本的URL是否返回正確頭信息和頁(yè)面源代碼。
百度站長(zhǎng)平臺(tái)好像不支持兩個(gè)版本都加入站長(zhǎng)平臺(tái)。不過(guò)在原來(lái)http賬號(hào)下,管理站點(diǎn)屬性部分有這樣一個(gè)選項(xiàng):
怎樣把網(wǎng)站從http轉(zhuǎn)換成https 站長(zhǎng) 好文分享 第2張
點(diǎn)這句話右面的設(shè)置按鈕,出來(lái)一個(gè)對(duì)話框,問(wèn)是否確認(rèn)支持https協(xié)議,點(diǎn)“是”后變成這樣:
怎樣把網(wǎng)站從http轉(zhuǎn)換成https 站長(zhǎng) 好文分享 第3張
希望這樣百度就知道應(yīng)該把http和https兩個(gè)版本動(dòng)作一個(gè)網(wǎng)站處理。
持續(xù)觀察抓取、收錄、排名、流量
這是接下來(lái)兩三個(gè)月要做的事了,以后有進(jìn)展再來(lái)報(bào)告。
目前可以報(bào)告的是,原始日志顯示,百度及Google蜘蛛都抓取正常,已經(jīng)抓取了301及轉(zhuǎn)向后的頁(yè)面。我是26號(hào)凌晨4-6點(diǎn)安裝SSL證書、加301轉(zhuǎn)向的,26號(hào)中午Google已經(jīng)索引了幾十個(gè)https頁(yè)面(然而,沒有首頁(yè),可能對(duì)待首頁(yè)比較謹(jǐn)慎):
怎樣把網(wǎng)站從http轉(zhuǎn)換成https 站長(zhǎng) 好文分享 第4張
并且一些https頁(yè)面(并不是所有已經(jīng)索引了的https頁(yè)面)已經(jīng)進(jìn)入排名,和原來(lái)的http版本位置基本是一樣的。
百度到目前為止,還沒有索引https頁(yè)面。
盡量改正外部鏈接
可能的話,把外部鏈接改到新的https地址。