怎樣把網(wǎng)站從http轉(zhuǎn)換成https
- 威海seo技術(shù)提升 威海https
- 2211
近兩年的情況表明,網(wǎng)站啟用https已是大勢(shì)所趨。但由于懶,一直沒(méi)有動(dòng)作。在David Yin的激勵(lì)下,終于在人際稀少的春節(jié)前夕把SEO每天一貼轉(zhuǎn)換成https了。
網(wǎng)站上有我博客鏈接的朋友,麻煩把鏈接從:
http://www.seozac.com
改到
https://www.seozac.com
謝謝。
使用https加密目前看有利有弊。利,首先是安全,減少被劫持、篡改的機(jī)會(huì)。弊,主要是速度上的,由于證書(shū)驗(yàn)證、多次握手、CPU消耗等原因,https頁(yè)面速度會(huì)被拖慢一點(diǎn)點(diǎn)。但對(duì)大部分網(wǎng)站來(lái)說(shuō),與復(fù)雜的腳本、大尺寸圖片等相比,拖慢這一點(diǎn)點(diǎn)基本可以忽略。
改為https對(duì)SEO按說(shuō)應(yīng)該有好處,不過(guò)實(shí)際情況如何還有待驗(yàn)證。Google方面早就表明https是排名因素之一,雖然只是個(gè)很小因素。百度很久以前對(duì)https支持不好,甚至曾經(jīng)提到過(guò),百度不會(huì)主動(dòng)抓取https頁(yè)面,但2015年百度站長(zhǎng)平臺(tái)發(fā)布消息,百度支持https無(wú)問(wèn)題,而且對(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)重,并且只傳遞部分權(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í)候還是剛剛開(kāi)博的頭兩年,那時(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版本,我并沒(méi)有。公司網(wǎng)站最好更謹(jǐn)慎點(diǎn)。
購(gòu)買(mǎi)SSL證書(shū)
這個(gè)是必須的,現(xiàn)在價(jià)格并不貴。到David Yin帖子看一下,便宜的3年只是幾十塊錢(qián)。安裝SSL證書(shū)的技術(shù)問(wèn)題,無(wú)法在這討論了,不明白的問(wèn)技術(shù)人員吧。
順便廣告一下,如果用我們的服務(wù)器,免費(fèi)提供SSL證書(shū)。
備份、備份
這個(gè)也是必須的。對(duì)SSL安裝、服務(wù)器配置不熟悉的站長(zhǎng)來(lái)說(shuō),轉(zhuǎn)換過(guò)程不一定是那么順利的。
新版本代碼改動(dòng)
SSL證書(shū)安裝后,https版本就可以訪問(wèn)了。原來(lái)網(wǎng)站上的所有URL都需要改到https版本,包括鏈接、圖片、JS等,所以可能需要修改文章數(shù)據(jù)庫(kù)、模板、插件等。
本博客使用WordPress,要在后臺(tái)把博客地址改為https版本:
WordPress后臺(tái)設(shè)置
這樣,絕大部分導(dǎo)航中的鏈接就由WP系統(tǒng)自動(dòng)改為https版本了。但很可能還有一些導(dǎo)航性質(zhì)的鏈接是硬編碼在模板中的,比如這個(gè)博客帖子下面的版權(quán)聲明,那是人工寫(xiě)在模板里的,別忘了改。
帖子正文中人工加的內(nèi)部鏈接也需要自己改。如果使用了phpMyadmin,用下面指令跑一下數(shù)據(jù)庫(kù)就行了:
update wp_posts set post_content = replace(
post_content, ‘http://www.seozac.com/’,
‘https://www.seozac.com/’);
帖子里的圖片路徑也就同時(shí)改了。
如果沒(méi)有使用數(shù)據(jù)庫(kù)管理工具,寫(xiě)個(gè)簡(jiǎn)單php程序運(yùn)行一下也可以。
因?yàn)橹皇怯弥噶钤跀?shù)據(jù)庫(kù)執(zhí)行了一下,沒(méi)有,也沒(méi)辦法人工檢查所有頁(yè)面,可能有漏掉的鏈接、圖片之類(lèi)的,讀者要是發(fā)現(xiàn)了,麻煩告訴我一下。
這里我還遇到了些沒(méi)解決的問(wèn)題。新浪微博組件和百度分享按鈕組件貌似都不支持https,原理上應(yīng)該可以把JS下載下來(lái)放到自己服務(wù)器上,但暫時(shí)沒(méi)時(shí)間弄這個(gè),先拿掉了。
檢查新版本頁(yè)面源代碼
訪問(wèn)一下https版本頁(yè)面,包括首頁(yè)、欄目頁(yè)、內(nèi)頁(yè)、sitemap,查一下源代碼,看看還有沒(méi)有http地址的存在,不僅頁(yè)面可見(jiàn)部分,還得看看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í)際代碼,還有其他寫(xiě)法也可以,只要實(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):
百度站長(zhǎng)平臺(tái)https設(shè)置
點(diǎn)這句話右面的設(shè)置按鈕,出來(lái)一個(gè)對(duì)話框,問(wèn)是否確認(rèn)支持https協(xié)議,點(diǎn)“是”后變成這樣:
百度站長(zhǎng)平臺(tái)https協(xié)議
希望這樣百度就知道應(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證書(shū)、加301轉(zhuǎn)向的,26號(hào)中午Google已經(jīng)索引了幾十個(gè)https頁(yè)面(然而,沒(méi)有首頁(yè),可能對(duì)待首頁(yè)比較謹(jǐn)慎):
Google索引的https頁(yè)面
并且一些https頁(yè)面(并不是所有已經(jīng)索引了的https頁(yè)面)已經(jīng)進(jìn)入排名,和原來(lái)的http版本位置基本是一樣的。
百度到寫(xiě)本帖日期為止,還沒(méi)有索引https頁(yè)面。
盡量改正外部鏈接
可能的話,把外部鏈接改到新的https地址。所以,再次呼吁,網(wǎng)站上有我博客鏈接的朋友,麻煩把鏈接從:
http://www.seozac.com
改到
https://www.seozac.com
謝謝。并祝所有讀者春節(jié)快樂(lè)。
來(lái)源:SEO每天一貼 Zac 昝輝