难的不是做完一件事,难的是做好一件事
一、前言
博客搭起来也有好一段时间了,刚搭博客那会。百度一搜,还能到第一页,现在搜索得到四五页去了。是时候补补SEO方面的优化了。
二、SEO是什么
百度百科对"seo"的定义是:SEO(Search Engine Optimization),汉译为搜索引擎优化。搜索引擎优化是一种利用搜索引擎的搜索规则来提高目的网站在有关搜索引擎内的排名的方式。SEO目的理解是:为网站提供生态式的自我营销解决方案,让网站在行业内占据领先地位,从而获得品牌收益。SEO包含站外SEO和站内SEO两方面。因此每个人都有一个标准去衡量这个新名词,确实这个新东西让我们在互联网查询自己的东西很方便,只需要你查询自己的关键词或者你查询的名词都可以很快地的出现你所需要的文章或者图片、视频乃至自己喜欢的宝贝。
除开站外SEO,自己能做的有两方面。一是针对个人网站的页面排版进行SEO的优化;二是针对搜索引擎进行主动的优化。
三、针对百度搜索引擎的优化
生在我大天朝,百度毫无疑问是搜索大头了。尽管最近是有百度各种XXX的消息,百度也确实是做的很不对,但也不得不承认,国内其他搜索引擎还真比不上百度。所以就还是老老实实的去迎合百度搜索引擎吧。
1. 添加百度 sitemap
之前有一篇文章专门讲了sitemap
的添加,这里就不多讲了,给出地址:Hexo 博客添加百度sitemap
2. 添加蜘蛛协议 robots
新建robots.txt文件,添加以下文件内容,把robots.txt放在hexo站点的source文件下。
# hexo robots.txt
User-agent: * Allow: /
Allow: /archives/
Disallow: /vendors/
Disallow: /js/
Disallow: /css/
Disallow: /fonts/
Disallow: /vendors/
Disallow: /fancybox/
Sitemap: http://lancelot_lewis.coding.me/sitemap.xml
Sitemap: http://lancelot_lewis.coding.me/baidusitemap.xml
然后去百度站长平台检测robots
文件看看有没有生效。
四、网站结构自身优化
1. 给出站链接添加 “nofollow” 标签
网络爬虫会在当前页面搜索所有的链接,然后一个个查看,所以就很有可能跳到别的网站就不回来了。这个时候就需要nofollow
起作用了。
nofollow标签是由谷歌领头创新的一个“反垃圾链接”的标签,并被百度、yahoo等各大搜索引擎广泛支持,引用nofollow标签的目的是:用于指示搜索引擎不要追踪(即抓取)网页上的带有nofollow属性的任何出站链接,以减少垃圾链接的分散网站权重。
Hexo 的 Next 主题需要改以下几个地方:
- 找到
footer.swig
,路径在your-hexo-site\themes\next\layout\_partials
,将下面代码中的a
标签加上rel="external nofollow"
属性;
{{ __('footer.powered', '<a class="theme-link" href="http://hexo.io">Hexo</a>') }}
<a class="theme-link" href="https://github.com/iissnan/hexo-theme-next">
- 修改sidebar.swig文件,路径在your-hexo-site\themes\next\layout_macro,将下面代码中的
a
标签加上rel="external nofollow"
属性;
<a href="{{ link }}" target="_blank">{{ name }}</a>
<a href="http://creativecommons.org/licenses/{{ theme.creative_commons }}/4.0" class="cc-opacity" target="_blank">
2. keywords 和 description
在\scaffolds\post.md
中添加如下代码,用于生成的文章中添加关键字和描述。
keywords:
description:
在\themes\next\layout\_partials\head.swig
有如下代码,用于生成文章的keywords。原本是没有 description 的位置,可以自己在这段代码后加上以下代码:
{% if page.description %}
<meta name="description" content="{{ page.description }}" />
{% elif theme.description %}
<meta name="description" content="{{ theme.description }}" />
{% endif %}
后来经过实践发现 Hexo NexT 会默认添加 description,所以这里可以不添加这段代码
3. 首页title的优化
更改index.swig
文件,文件路径是your-hexo-site\themes\next\layout
,将下面代码
{% block title %} {{ config.title }} {% endblock %}
改成
{% block title %} {{ config.title }} - {{ theme.description }} {% endblock %}
4. 修改文章链接
HEXO默认的文章链接形式为domain/year/month/day/postname
,默认就是一个四级url,并且可能造成url过长,对搜索引擎是十分不友好的,我们可以改成domain/postname
的形式。编辑站点_config.yml
文件,修改其中的permalink
字段改为permalink: :title.html
即可。
附上个人博客对应博文地址:http://lancelot_lewis.coding.me/2016/08/16/blog/Hexo-NexT-SEO/