前言
能看到這里票顾,說明大家都跟我一樣桃犬,已經(jīng)把博客搭起來并洋洋灑灑寫了幾篇博文恋拍,正春風(fēng)得意感覺良好的時(shí)候隧土,搭建博客有屎以來最大的危機(jī)出現(xiàn)在沒有準(zhǔn)備的我面前提针,百度+谷歌都無法搜索到我的博客。裝逼還沒幾天就這樣曹傀,真是不能忍辐脖。 于是就研究了幾天,鼓搗出了這篇文章卖毁。教大家如何脫坑揖曾。
正文
下面準(zhǔn)備分別介紹谷歌和百度如何提交搜索引擎落萎,其中有一些共同的地方亥啦,這里先說明
先確認(rèn)博客是否被收錄
在百度或者谷歌上面輸入下面格式來判斷,如果能搜索到就說明被收錄练链,否則就沒有翔脱,用你的域名替代我的tengj.top
site:tengj.top
我目前搜索結(jié)果如圖:
驗(yàn)證網(wǎng)站
兩個(gè)搜索引擎入口:
為什么要驗(yàn)證網(wǎng)站
站長(zhǎng)平臺(tái)推薦站長(zhǎng)添加主站(您網(wǎng)站的鏈接也許會(huì)使用www 和非 www 兩種網(wǎng)址,建議添加用戶能夠真實(shí)訪問到的網(wǎng)址)媒鼓,添加并驗(yàn)證后届吁,可證明您是該域名的擁有者,可以快捷批量添加子站點(diǎn)绿鸣,查看所有子站數(shù)據(jù)疚沐,無需再一一驗(yàn)證您的子站點(diǎn)。
如何驗(yàn)證網(wǎng)站
首先如果您的網(wǎng)站已使用了百度統(tǒng)計(jì)潮模,您可以使用統(tǒng)計(jì)賬號(hào)登錄平臺(tái)亮蛔,或者綁定站長(zhǎng)平臺(tái)與百度統(tǒng)計(jì)賬號(hào),站長(zhǎng)平臺(tái)支持您批量導(dǎo)入百度統(tǒng)計(jì)中的站點(diǎn)擎厢,您不需要再對(duì)網(wǎng)站進(jìn)行驗(yàn)證究流。
百度站長(zhǎng)平臺(tái)為未使用百度統(tǒng)計(jì)的站點(diǎn)提供三種驗(yàn)證方式:文件驗(yàn)證辣吃、html標(biāo)簽驗(yàn)證、CNAME驗(yàn)證芬探。
1.文件驗(yàn)證:您需要下載驗(yàn)證文件神得,將文件上傳至您的服務(wù)器,放置于域名根目錄下偷仿。
2.html標(biāo)簽驗(yàn)證:將html標(biāo)簽添加至網(wǎng)站首頁html代碼的<head>標(biāo)簽與</head>標(biāo)簽之間哩簿。
3.CNAME驗(yàn)證:您需要登錄域名提供商或托管服務(wù)提供商的網(wǎng)站,添加新的DNS記錄酝静。
驗(yàn)證完成后卡骂,我們將會(huì)認(rèn)為您是網(wǎng)站的擁有者。為使您的網(wǎng)站一直保持驗(yàn)證通過的狀態(tài)形入,請(qǐng)保留驗(yàn)證的文件全跨、html標(biāo)簽或CNAME記錄,我們會(huì)去定期檢查驗(yàn)證記錄亿遂。
不管谷歌還是百度都要先添加域名浓若,然后驗(yàn)證網(wǎng)站,這里統(tǒng)一都使用文件驗(yàn)證蛇数,就是下載對(duì)應(yīng)的html文件挪钓,放到域名根目錄下,也就收博客根目錄下的source下面
然后部署到服務(wù)器,輸入地址:http://tengj.top/googlead0e22632f59a368.html 能訪問到就可以點(diǎn)驗(yàn)證按鈕耳舅。
站點(diǎn)地圖
站點(diǎn)地圖是一種文件碌上,您可以通過該文件列出您網(wǎng)站上的網(wǎng)頁,從而將您網(wǎng)站內(nèi)容的組織架構(gòu)告知Google和其他搜索引擎浦徊。Googlebot等搜索引擎網(wǎng)頁抓取工具會(huì)讀取此文件馏予,以便更加智能地抓取您的網(wǎng)站。
我們要先安裝一下盔性,打開你的hexo博客根目錄霞丧,分別用下面兩個(gè)命令來安裝針對(duì)谷歌和百度的插件
npm install hexo-generator-sitemap --save
npm install hexo-generator-baidu-sitemap --save
在博客目錄的_config.yml中添加如下代碼(我不加也可以)
# 自動(dòng)生成sitemap
sitemap:
path: sitemap.xml
baidusitemap:
path: baidusitemap.xml
編譯你的博客
hexo g
如果你在你的博客根目錄的public
下面發(fā)現(xiàn)生成了sitemap.xml
以及baidusitemap.xml
就表示成功了。
這時(shí)候sitemap.xml
跟baidusitemap.xml
里面的內(nèi)容一樣冕香,但是文章鏈接都是tengj.github.io的蛹尝,這里我就很奇怪了,我博客同時(shí)對(duì)應(yīng)github和coding的悉尾,為啥生成的sitemap.xml
對(duì)應(yīng)的域名都指向了github突那,sitemap.xml
我是要提交谷歌的,對(duì)應(yīng)github的域名沒問題构眯,但是baidusitemap.xml
里面域名還對(duì)應(yīng)github問題就大了愕难,因?yàn)間ithub禁止了百度爬蟲,提交了百度也是不會(huì)訪問的。所以我把baidusitemap.xml
里面的改成了我的個(gè)人域名tengj.top务漩,因?yàn)閲?guó)內(nèi)用戶訪問tengj.top其實(shí)是訪問coding上面拄衰。
部署后你分別訪問
http://tengj.top/sitemap.xml
http://tengj.top/baidusitemap.xml
效果如下圖:
讓谷歌收錄我們的博客
谷歌操作比較簡(jiǎn)單,就是向Google站長(zhǎng)工具提交sitemap
登錄Google賬號(hào)饵骨,添加了站點(diǎn)驗(yàn)證通過后翘悉,選擇站點(diǎn),之后在抓取
——站點(diǎn)地圖
中就能看到添加/測(cè)試站點(diǎn)地圖
居触,如下圖:
谷歌我提交過了一天就能搜索到我的博客了妖混,效率很高。
讓百度收錄我們的博客
谷歌很好搞定轮洋,百度就感覺很難制市,我從提交百度到現(xiàn)在寫這篇博客,在百度那邊也只能搜索到一條我的博客弊予,真不容易祥楣。
正常情況,是要等百度爬蟲來爬到你的網(wǎng)站汉柒,才會(huì)被收錄误褪。
但是github屏蔽了百度爬蟲目前,所以我們要主動(dòng)出擊碾褂,我們自己把網(wǎng)站提交給百度兽间。
這就要使用到百度站長(zhǎng)平臺(tái)
驗(yàn)證網(wǎng)站
驗(yàn)證網(wǎng)站最上面提過了,這里直接截圖
網(wǎng)頁抓取
上面步驟成功后正塌,進(jìn)入站點(diǎn)管理嘀略,找到網(wǎng)頁抓取這邊詳情點(diǎn)進(jìn)去
我們主動(dòng)提交博客文章鏈接
如何選擇鏈接提交方式
1、主動(dòng)推送:最為快速的提交方式乓诽,推薦您將站點(diǎn)當(dāng)天新產(chǎn)出鏈接立即通過此方式推送給百度帜羊,以保證新鏈接可以及時(shí)被百度收錄。
2问裕、自動(dòng)推送:最為便捷的提交方式逮壁,請(qǐng)將自動(dòng)推送的JS代碼部署在站點(diǎn)的每一個(gè)頁面源代碼中,部署代碼的頁面在每次被瀏覽時(shí)粮宛,鏈接會(huì)被自動(dòng)推送給百度÷舫瑁可以與主動(dòng)推送配合使用巍杈。
3、sitemap:您可以定期將網(wǎng)站鏈接放到sitemap中扛伍,然后將sitemap提交給百度筷畦。百度會(huì)周期性的抓取檢查您提交的sitemap,對(duì)其中的鏈接進(jìn)行處理,但收錄速度慢于主動(dòng)推送鳖宾。
4吼砂、手動(dòng)提交:一次性提交鏈接給百度,可以使用此種方式鼎文。
一般主動(dòng)提交比手動(dòng)提交效果好渔肩,這里介紹主動(dòng)提交的三種方法
從效率上來說:
主動(dòng)推送>自動(dòng)推送>sitemap
主動(dòng)推送
主動(dòng)推送是百度搜索為站長(zhǎng)們快速提交數(shù)據(jù)針對(duì)性開發(fā)的最快捷工具,但是也最難拇惋,沒有代碼功底的小伙伴估計(jì)就不會(huì)了周偎。
沒事,博主既然寫了這篇博客就表示博主找到方法了撑帖,我自己用java寫了個(gè)post的推送示例蓉坎,部署到了coding,我也不知道能部署多久胡嘿,好像部署在coding的演示那邊每天都會(huì)扣除碼幣蛉艾。
地址:戳我
說明:
選擇數(shù)據(jù)類型,默認(rèn)推送數(shù)據(jù)衷敌,也有更新數(shù)據(jù)伺通,刪除數(shù)據(jù)。后面2個(gè)一般用不到
填寫站點(diǎn)逢享,也就是你的域名罐监,我的是tengj.top
填寫token,token在主動(dòng)推送例子那邊有一串。實(shí)在找不到就按下CTRL+F
查找token
填寫文章地址瞒爬,填寫你要提交的文章鏈接弓柱,每行一條記錄
成功提示:
地址錯(cuò)誤提示:
自動(dòng)推送
自動(dòng)推送很簡(jiǎn)單,就是在你代碼里面嵌入自動(dòng)推送JS代碼侧但,在頁面被訪問時(shí)矢空,頁面URL將立即被推送給百度
代碼如下:
<script>
(function(){
var bp = document.createElement('script');
bp.src = '//push.zhanzhang.baidu.com/push.js';
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(bp, s);
})();
</script>
我是放在\themes\jacman\layout\_partial\after_footer.ejs
中,添加到下面就行禀横。
sitemap提交
sitemap
提交最上面提過了屁药,直接提交http://tengj.top/baidusitemap.xml 就行,大家看下圖就知道柏锄,一開始我是提交 sitemap.xml
酿箭,里面是指向github
的,結(jié)果主域校驗(yàn)失敗了趾娃,后來切換到指向tengj.top
域名的baidusitemap.xml
就提交成功缭嫡。
最后大家看下我最近提交的情況
為什么自動(dòng)推送可以更快的將頁面推送給百度搜索?基于自動(dòng)推送的實(shí)現(xiàn)原理問題抬闷,當(dāng)新頁面每次被瀏覽時(shí)妇蛀,頁面URL會(huì)自動(dòng)推送給百度耕突,無需站長(zhǎng)匯總URL再進(jìn)行主動(dòng)推送操作。
借助用戶的瀏覽行為來觸發(fā)推送動(dòng)作评架,省去了站長(zhǎng)人工操作的時(shí)間眷茁。
自動(dòng)推送和鏈接提交有什么區(qū)別?已經(jīng)在使用鏈接提交的網(wǎng)站還需要再部署自動(dòng)推送代碼嗎纵诞?
二者之間互不沖突上祈,互為補(bǔ)充。已經(jīng)使用主動(dòng)推送的站點(diǎn)挣磨,依然可以部署自動(dòng)推送的JS代碼雇逞,二者一起使用。
什么樣的網(wǎng)站更適合使用自動(dòng)推送茁裙?自動(dòng)推送由于實(shí)現(xiàn)便捷和后續(xù)維護(hù)成本低的特點(diǎn)塘砸,適合技術(shù)能力相對(duì)薄弱,無能力支持全天候?qū)崟r(shí)主動(dòng)推送程序的站長(zhǎng)晤锥。
站長(zhǎng)僅需一次部署自動(dòng)推送JS代碼的操作掉蔬,就可以實(shí)現(xiàn)新頁面被瀏覽即推送的效果,低成本實(shí)現(xiàn)鏈接自動(dòng)提交矾瘾。
同時(shí)女轿,我們也支持主動(dòng)推送和自動(dòng)推送代碼配合使用,二者互不影響壕翩。
參考
總結(jié)
寫了3個(gè)小時(shí)終于寫差不多了蛉迹,很早就想寫這篇的,結(jié)果百度不給力放妈,一直不給收錄所以拖到今天北救,昨天花了點(diǎn)時(shí)間寫了下主動(dòng)推送的接口方便大家,地址上面有芜抒。
3月8號(hào) 分別用sitemap
和baidusitemap
提交到谷歌和百度
3月9號(hào) 谷歌的收錄了珍策,可以搜索到我的博客
3月10號(hào) 百度收錄了