文章首發於個人博客:Hexo 我的博客 SEO 優化(3):改造你的博客,提高搜索引擎排名html
在第一篇文章中介紹了搜索引擎原理基本原理和工做流程。在第二篇文章中介紹了 SEO 優化的基礎部分-站內優化所包括的一些要素。 因此,在這篇文章就要教你們如何根據第二篇提到的站內優化要素對本身的博客進行 SEO 優化,以及介紹SEO經常使用的一些工具及用法。幫助你們的博客能更好更快地被搜索引擎收錄。web
因爲個人博客使用的我優化及改裝事後的maupassant-hexo,因此下面的設置都是基於這個主題的操做。若是你也是基於 Hexo 構建博客的話,具體的設置可能或許會根據主題的不一樣會有些許差別,但思路是同樣的。只要根據這個思路去改造就能夠了。瀏覽器
咱們能夠根據第二篇提到的站內優化一步一步來優化。bash
建議:呈現樹形連接結構,且首頁到內頁的點擊距離不能太大markdown
因爲咱們的博客是用 Hexo 生成的靜態博客,因此在物理結構上採用的是樹形結構的方式。在連接結構上也是呈現樹形結構,且因爲是靜態博客,並無很深的連接結構,因此每一個頁面與首頁的點擊距離通常只有1~2次。hexo
根據搜索引擎工做原理可知:網站首頁是整個網站權重最高的頁面,與首頁的點擊距離越小,被 spider 爬取的機率和權重也就越大。這也是爲何咱們須要將內頁(也就是具體的文章頁面)的首頁點擊距離控制得越小越好。app
因爲是我的博客,因此在導航的設置上通常都比較簡潔,無需作過多的設置。通常是針對大型網站,擁有數量多,層級深的導航,才須要刻意設置導航結構。
建議:若是能夠的話,使用目錄來代替子域名
對於子域名而言,搜索引擎會把其當作單獨的站點來對待。形成的後果就是主域名的權重很難分配給子域名。 因此若是你的主域名已經有其餘用途的話,能夠嘗試將 blog 掛載到域名的目錄下。 好比阮一峯老師的我的網站就是這麼來分配的。 www.ruanyifeng.com
是我的網站首頁,www.ruanyifeng.com/blog/
是我的博客的路徑。
建議:對於一些可有可無的頁面,使用 Robots.txt 或者 Meta Robots 標籤指定,保證這些頁面不被收錄,不影響網站的權重。
好比通常博客都會有的 About Me
頁面,以及有的人會自定義一些頁面。通常來講,這些頁面無需被瀏覽器收錄。
下面以 About Me
做爲例子,來講明如何爲該頁面添加 meta robots 標籤。 思路以下:在 markdown 文件添加 disallow:true
,而後在主題文件的 head 文件中根據 disallow
的值判斷是否添加 <mate name="robots" content="noindex,nofollow">
在你的博客項目中找到「關於我」的 markdown 文件,
---
layout: "about"
title: '關於我'
date: 2017-03-25 04:48:33
disallow: true
comments: true ---
複製代碼
在文章開頭添加 disallow:true
字段,表示當前頁面不須要 spider 爬取。默認爲true。
接下來打開主題文件下的 layout/_partial/head.jade: 添加 block robots
head
meta(http-equiv='content-type', content='text/html; charset=utf-8')
meta(content='width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0', name='viewport')
meta(content='yes', name='apple-mobile-web-app-capable')
meta(content='black-translucent', name='apple-mobile-web-app-status-bar-style')
meta(content='telephone=no', name='format-detection')
meta(content="dgvt3U_uqyQHGrm9xUEVFnAo2tRi4ZTMKgvSav_TNCA" name="google-site-verification" )
meta(name="msvalidate.01" content="D2790C82AAD9C96057EDDF2213A14C2D")
// 新增
block robots
複製代碼
而後打開 layout/page.jade,添加下面的內容:
extends base
// 新增
block robots
if page.disallow
meta(name='robots', content='noindex,nofollow')
複製代碼
這樣就能夠實如今當前頁面設置 meta robots 標籤,禁止瀏覽器收錄。(須要注意的是,不一樣的 Hexo 主題採用的語法是不一樣的)
除了 robots meta
標籤能夠禁止搜索引擎收錄和跟蹤,還有 < a ref="nofollow" />
也能夠。那麼在我的博客中, nofollow
有哪些使用場景呢?
網站地圖是每一個網站的必需要有的。通常提供 XML 版本便可。 使用 Hexo 構建博客的能夠直接使用插件 hexo-generator-sitemap ,每次新增編輯文章後,在發佈前,會自動在根目錄生成 sitemap.xml 文件。
若是你是第一次製做網站地圖,你還須要作兩件事:
Sitemap:http://chenhuichao.com/sitemap.xml
對於我的博客,網站結構能夠調整的基本就是上面那些內容了。接下來講說如何改造博客的模板。 這個步驟須要對頁面操做的就是頁面的 Description Meta 標籤了。
幾乎大部分的主題並不會爲每篇文章設置單獨的 Description Meta。一小部分主題會將每篇文章的 tag 設置成 Description Meta。很顯然,這兩種方式,都不是咱們提倡的。 接下來講說,若是爲每篇文章添加單獨的 Description Meta。 改造思路如同上面的 Robot Meta,也是在每篇文章的開頭添加 desc:一句話總結文章,而後在 post.jade
這個模板文件中判斷當前頁面是否存在 desc 字段,若是存在的話,則使用當前頁面自定義的描述內容,不然就使用默認。
打開 layout/_partial/head.jade,添加 block description
block description
block robots
block title
複製代碼
而後打開 layout/post.jade,添加下面的內容:
block description
if page.desc
meta(name='description', content=page.desc)
else
meta(name='description', content=config.description)
複製代碼
這樣就能夠針對每篇文章設置單獨的描述內容了。 頁面的標題設置同上面的一致。
其餘的一些頁面優化內容,都只須要在寫文章內容的時候注意就能夠了,無需改造網站主題文件了。
第一件就是:添加你的博客地址到各大搜索引擎。
若是你不主動提交你的博客地址給各大搜索引擎,那麼即便你站內優化作得再好,搜索引擎根本都不知道你的博客的存在。 因此別忘記在你建立完博客的那一刻就去提交。若是你此刻尚未提交,如今就去吧。
此外,在你博客每新增一篇文章,也須要將文章地址提交到各大搜索引擎入口。若是隻是我的博客的話,通常只須要針對 Google 就能夠了。
GA 是用來統計訪問信息的,站長工具是用來查看網站的查詢和搜索數據。建議每一個博客都須要配置這兩個。 GA 的安裝如今的主題基本都覆蓋了,你只須要去申請一個key就能夠了。
接下來講說 Google 站長工具
登陸以後,你須要先添加你的網站並驗證你的網站:
驗證完網站以後,你須要進行 robots.txt 測試和網站地圖添加。這樣能快速讓搜索引擎收錄你博客的頁面。
這兩步完成以後,就能夠查看你的博客在搜索引擎的數據了。好比你能夠查看用戶搜索什麼關鍵詞時會展現你的頁面,以及對應的點擊率和其餘一些指標。
前面說到的在你新增一篇文章以後,能夠直接在 站長工具內的 Google 抓取工具 中提交,這樣速度最快,通常提交幾分鐘後就能被收錄了。
建議是不要隨便更好域名。若是非得更換域名的話,須要將舊的域名依然保持運行,而後對舊域名的全部訪問設置 301 跳轉,將舊的域名的權重都轉移到新的域名上。
若是你是用 nginx 的話,能夠在配置文件上添加:
53 server {
54 listen 80;
55 server_name www.iamsuperman.cn;
56 rewrite ^/(.*) http://chenhuichao.com/$1 permanent; // permanent 表示301永久 redirect 表示302臨時
57 }
58 server {
59 listen 443;
60 server_name www.iamsuperman.cn;
61 rewrite ^/(.*)http://www.iamsuperman.cn/$1 permanent;
62 }
複製代碼
server_name 是你的舊域名。
上面所說的站內優化都只是一些最基礎的優化。你並不能指望,你作完站內優化後,博客排名就能上升很快。你須要知道的是,SEO 是一個長期的過程,因此把基礎的站內優化作好後,按期更新高質量的文章纔是不斷提升訪問量和排名的最好的辦法。