WuShaolin

悟已往之不谏,知来者之可追!

0%

SEO不完全指北

这个周末学习了一下关于把个人站点进行SEO的初级操作,觉得很有意思,以此文记录一下,如果你也使用HEXO那将会有帮助。

SEOSearch Engine Optimization,意指搜索引擎优化的意思,通过必要的网站结构的设计让spider机器人爬取有用的数据,提高网站在搜索时的排名与在相关领域的权重。

百度站长

国内的话,首推百度站长,前提是你要有自已 的域名了。

添加站点

按照下图操作

百度添加网站

前面两部基本没问题,注意一下第三步的操作:

第三步验证操作

  • 通常选择文件验证和CNAME验证,我选择的是文件验证,这里要把百度的验证文件放到你的域名的根目录下,具体的在这里指:source目录下,要注意如果是html文件要使用如下代码处理,防止后续部署时把html文件给处理了。
layout: false
---
FZKjy3o3f6 //你的验证文件的内容,显然百度分配给每个人都不一样

添加站点地图

  1. 首先安装两个插件
npm install hexo-generator-sitemap --save     
npm install hexo-generator-baidu-sitemap --save
  1. 修改项目根目录下的_config.yml 的URL
# URL
url: http://wushao.xyz //你的个人站点的名字
root: /
permalink: :year/:month/:day/:title/ //这里将会在后续的URL持久化章中优化
  1. 进行如下代码的部署,在根目录下的public目录生成sitemap.xmlbaidusitemap.xml
hexo g -d //相当于hexo generate 然后 hexo deploy
  1. 把上面生成的sitemap.xml提交给百度,按照第一章的做法把站点添加到百度后,按照下图的方式提交

链接提交

这里有两种方式提交,很明显选择自动提交——主动推送的方式,注意这里的token,很重要

主动提交方式

使用如下代码完成主动推送

//1.先安装插件
npm install hexo-baidu-url-submit --save
//2.在根目录下的_config.yml 添加baidu_url_submit属性
baidu_url_submit:
  count: 100 # 提交最新的一个链接,最新的100个链接,想写几个写几个
  host: wushao.xyz # 在百度站长平台中注册的域名
  token:  # 请注意这是您的秘钥,就是上图模糊处理的那个所以请不要把博客源代码发布在公众仓库里!
  path: baidu_urls.txt # 文本文档的地址, 新链接会保存在public目录下
//3.修改根目录下的_config.yml 的deploy属性,注意有两个deploy时的格式!!!
# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
- type: git
  repo:
        github: 你的github
        coding: 你的coding
- type: baidu_url_submitter

下面介绍几个优化爬取的方法


添加robots.txt

这里是为了告诉搜索引擎哪些可以爬取哪些不可以爬取,在source目录下添加robots.txt,文本内容如下

User-agent: *
Allow: /
Allow: /archives/
Allow: /categories/
Allow: /tags/
Allow: /posts/

Disallow: /vendors/
Disallow: /js/
Disallow: /css/
Disallow: /fonts/
Disallow: /vendors/
Disallow: /fancybox/

Sitemap: https://你的站点/sitemap.xml //
Sitemap: https://你的站点/baidusitemap.xml

robots.txt内容

Url持久化

还记的_config.yml里面关于url的描述嘛。permalink属性中的/决定了你的url有几级,通常引擎只会爬取三层,而且对于汉字的处理不完美,可是你的文章名字难免会有汉字,所以这里要进行必要的转化。

# # URL
# ## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: 你的站点名字
root: /
permalink: :year/:month/:day/:title/ //优化处
npm install hexo-abbrlink --save
// Modify permalink in config.yml file:
permalink: posts/:abbrlink/
# abbrlink config
abbrlink:
  alg: crc32  #support crc16(default) and crc32
  rep: hex    #support dec(default) and hex
//部署完之后所有的url如下所示
http://wushao.xyz/posts/6ed52419.html //6ed52419这个就代表你原来的名字
http://wushao.xyz/posts/7a43570f.html
http://wushao.xyz/posts/7b3b172b.html
http://wushao.xyz/posts/77ac3545.html
  • 此时你会发现你以前的的文章标题会有变化

Google站长

Google的方便多了,直接google站长,然后进Search console,添加属性就是添加个人站点的意思,后续步骤和上面一样,但是收录的速度快多了。

Search console