SEO(Search Engine Optimization):中文譯爲搜索引擎優化,即利用搜索引擎的規則提升網站搜索引擎內天然排名。主要經過站內優化好比網站結構調整、網站內容建設、網站代碼優化等以及站外優化等方式實現。css
主要是給各個搜索引擎提交你的 sitemap,讓別人能搜到你博客的內容。
先確認博客是否被搜索引擎收錄,在百度或者谷歌輸入下面格式來判斷,若是能搜索到就說明被收錄,不然就沒有。html
site:寫你要搜索的域名 # site:rogn.top
開啓 Next 主題的 SEO 優化項
Next 提供了 seo 優化選項,在主題配置文件_config.yml
中有個選項是seo
,設置成true
即開啓了 seo 優化。
百度沒法搜索到博客信息,是由於 Github Pages 屏蔽了百度爬蟲git
讓百度和百度收錄博客
因爲二者方法類似,類似的部分一塊兒講。github
1. 進行驗證
打開百度站長平臺,以後在用戶中心 > 站點管理
下添加網站。根據提示輸入站點地址等信息,建議輸入的域名爲www
開頭的。npm
登錄google search console(選右邊),添加你的網站地址。架構
有3種驗證方式:hexo
- HTML文件驗證:將驗證文件放置於您所配置域名的根目錄下,即放在博客的本地根目錄的
source
文件夾下(要設置skip_render)。 - HTML標籤驗證:baidu_site_verification後添加HTML標籤content後的內容(推薦)
- CNAME驗證:按要求添加一條CNAME解析
2. 生成sitemap站點地圖
站點地圖是一種文件,您能夠經過該文件列出您網站上的網頁,從而將您網站內容的組織架構告知 Google 等搜索引擎。搜索引擎網頁抓取工具會讀取此文件,以便更加智能地抓取您的網站。工具
咱們須要使用插件自動生成網站的 sitemap,而後將生成的 sitemap 提交到百度和其餘搜索引擎。
先安裝谷歌和百度的插件,以下:post
npm install hexo-generator-sitemap --save npm install hexo-generator-baidu-sitemap --save
在博客根目錄的_config.yml
中改url
爲你的站點地址:(最好把文章連接也改淺點)優化
url: https://rogn.top root: / # permalink: :year/:month/:day/:title/ permalink: :title/
在博客根目錄的_config.yml
中添加以下代碼:
baidusitemap: path: baidusitemap.xml sitemap: path: sitemap.xml
以後從新打包hexo g -d
,若在你的博客根目錄的public
下面發現生成了sitemap.xml
以及baidusitemap.xml
就表示成功了,其中sitemap.xml
文件是搜索引擎通用的文件,baidusitemap.xml
是百度專用的 sitemap 文件。
3. 添加 robots.txt
robots.txt
是搜索引擎蜘蛛協議,告訴引擎哪些要收錄,哪些禁止收錄。source
文件夾下新建 robots.txt,內容以下:
User-agent: * Allow: / Allow: /home/ Allow: /about/ Allow: /archives/ Allow: /categories/ Allow: /tags/ Disallow: /js/ Disallow: /css/ Disallow: /fonts/ Disallow: /vendors/ Disallow: /fancybox/ Disallow: /categories/ Sitemap: http://rogn.top/sitemap.xml Sitemap: http://rogn.top/baidusitemap.xml
4. 提交sitemap
谷歌:在 google search console 站點地圖,提交sitemap.xml
百度:在百度站長平臺--連接提交--自動提交--sitemap,添加https://rogn.top/baidusitemap.xml
對於百度,除了 sitemap 還有主動推進和自動推送這兩種方式,主動推送的原理是每次 deploy 的時候都把全部連接推送給百度,自動推送則是每次網站被訪問時都把該連接推送給百度。
主動推送:
1. 插件安裝
npm install hexo-baidu-url-submit --save
2. 修改站點配置文件
在 Hexo/_config.yml,添加如下內容
baidu_url_submit: count: 5 host: your_site token: your_token path: baidu_urls.txt
其中 count 表示一次推送提交最新的N個連接;host 和 token 能夠在百度站點頁面->數據引入->連接提交能夠找到;path 爲生成的文件名,裏面存有推送的,咱們網站的連接地址。
確保your_site 項跟百度註冊的站點一致。
一樣修改站點配置文件的 deploy 項,咱們原來已經有 git 的 deploy,如今增長對 baidu 的推送,最終是這樣子的:
deploy: - type: git repo: https://github.com/growvv/growvv.github.io.git branch: master - type: baidu_url_submitter
從新生成,發佈 hexo d,
{"remain":99998,"success":2}
能夠看到推送給百度成功。
自動推送
首先,在主題配置文件下設置,將baidu_push
設置爲true
:
而後查看themes/next/layout/_third-party/baidu-push.swig
文件中是否包含以下百度提供的自動推送代碼,沒有的話要添加:
{% if theme.baidu_push %} <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> {% endif %}
這樣每次訪問博客中的頁面就會自動向百度提交 sitemap。
參考連接: