个人静态博客SEO该考虑哪些问题呢?本篇文章给你答案

咖啡君在开始写文章时首选了微信公众号作为发布平台,但公众号在PC端的体验并不好,连最基本的文章列表都没有,所以就搭建了运维咖啡吧的网站,可以通过点击文章底部“阅读原文”访问网站体验

为了方便管理及节约成本,选择了免费的Github Pages作为网站运行平台。用Django写了个管理后台来管理文章,管理后台跑在我的电脑上,它可以将markdown格式的内容生成静态页面并自动上传至Github,管理后台的介绍看这篇文章:利用Django徒手写个静态页面生成工具

由于Github拒绝百度爬虫(这也是为什么在百度里搜索不到Github仓库的原因),且网站没有备案,所以针对百度的SEO优化就直接放弃了,把精力放在了Google搜索上,下图是当前访问网站的用户来源饼图,可以看出优化的效果

目前来自Google的搜索流量已经成了网站用户最大的来源,甚至超过了我的主动分享。达到这样的效果我都做了哪些事情呢?接着往下看

收录

新部署的网站并不能在短时间内被Google自动收录,我们需要手动提交给Google,需要做的是:

  1. 为你的站点生成sitemap

  2. 登陆Google Search Console,提交你的sitemap

sitemap内记录了整个网站哪些网页可以被搜索引擎所抓取,可以理解为网站所有url的集合,不同的搜索引擎支持不同的sitemap格式,最简单的可以像我一样将网站的所有url逐行记录进一个文本文件内

sitemap提交后搜索引擎蜘蛛并不会立即去抓取,你可以通过上方的搜索框输入你的网页url搜索确认是否编入索引,如果没有则可以手动请求编入索引,这样收录更快速一点

网站被收录之后,就需要考虑如何能尽可能多的展示给搜索的用户,网页能否被搜索引擎展示的最重要原因是网页是否对用户友好,所以所有的SEO都应该是围绕对用户友好展开的,主要包含以下几块的优化:内容、描述、性能、移动端兼容性

内容

内容一定是第一位的,原创的优质的内容能得到更多用户的青睐,同时对于搜索引擎来说也更喜欢,Google搜索出来的内容大多数情况下贴合度都比较高,所以考虑SEO的第一步就应该是内容足够好

搜索引擎如何判定你的内容足够优秀呢?有两个数据很重要:跳出率和会话时长

上图来自与Google的分析工具Analytics(以下简称GA),建议给网站内添加GA检测代码,虽然国内不能访问Google,但是GA检测代码是不受影响的,添加之后可以关注一下这两个值,努力将跳出率降低以及提升用户会话时长

为了降低跳出率和提升用户会话时长,我将博客内原本跳转到微信公众号的链接都给改成了博客内链接,这也是你点击知乎或者简书之类的平台外链时先跳转到本地地址询问你是否跳转站外的一个原因,就是为了降低跳出率,每篇文章底部的相关文章推荐阅读也能降低跳出率,当然这一切的前提是内容质量要够好,对用户有吸引力,对于会话时长也一样,好内容用户更有兴趣读下去,就会停留更长的时间

描述

对于一个网页的描述,主要由以下几部分组成:URL,Title,Keywords,Description,应尽量使用清晰的、能准确说明网页内容的描述

URL应尽量简短且唯一,最好可读性强

不同的页面要有不同的URL,不要使用同一URL去展示不同的内容,这里ajax异步请求替换页面内容是不推荐的,像vue之类的单页面应用也不推荐,这些对SEO都不友好,因为SEO在投放时实际上是按照页面维度进行投放的,如果你所有的内容都只有一个URL,那么你就只能投放一次,正常情况下肯定是投放的地址越多,被搜索到的概率也越大

Title和Description非常重要,title告诉用户和搜索引擎特定的网页主题是什么,description则描述了网页大概的内容,这两个标记直接影响SEO的搜索词和搜索结果的展现

Google的搜索结果会展示Title、URL、Description信息,需要说明的是这里的Description可能跟你html里配置的不一致,这是因为Google觉得你的description描述不准确,会选择能更好的匹配用户查询的内容作为description信息展示给用户

Title、Description和Keywords都应尽量清晰、准确的描述文章的内容,且要保持每个网页唯一,不可重复

准确描述网页的内容有利于蜘蛛更好的理解网页,从而更准确的推送给搜索的用户,带来更高的点击

性能

网页打开速度快也是对用户友好很重要的一个指标,如果你的网页打开很慢很容易被用户关闭,对于搜索引擎的爬虫来说也一样,并且搜索引擎的爬虫对每个网站抓取配额是有限制的,网页打开越快,爬虫抓取效率越高,收录的网页数就会越多,被搜索到的概率就越大,所以应尽量让网页打开的快一点

大多数的爬虫目前仍然是对网页源码进行抓取,并不做渲染,所以让主要内容直接显示在网页源码中非常重要,虽然Google蜘蛛已经能抓取解析简单的JS,但效率偏低,所以Google建议重要内容同步展示,这也是尽量不要用ajax异步加载内容的原因,个人博客因为是生成的静态html页面,所以没有这个问题

由于博客网站数据都存储在github上,所以即便是再优化效果也可能不会太好,但还是有一些优化可以做的,网页本身已经是纯静态文件了,所以加载速度与页面加载的资源有很大的关系,尽量使页面简单,使加载的页面资源尽量少、尽量小,同时将图片等静态资源放在CDN上也可以一定程度上加快网页的加载速度

移动端兼容

随着移动设备的普及,有很多用户会在移动端搜索内容,所以博客的移动端兼容性也非常重要,并且Google已经推出了以移动端网页作为主权重页面的移动网页索引,如果网页在PC端表现很好但对移动端不兼容,那么可能用户通过移动端搜索你的内容就会被过滤不展示

个人感觉技术类的网站移动端流量应该不会很高,但事实是运维咖啡吧网站移动端的流量占比超过16%,并且这个数据还有上升的趋势,所以移动端兼容不可忽视

写在最后

很多小伙伴问咖啡君:既然有了网站,是否还有必要关注公众号呢?

我觉得很有必要,公众号更新粉丝会收到消息通知,可以在上下班路上等碎片时间打开看看,看讲到的知识点,看解决方案,看处理思路,有个印象,这样在自己需要解决一样或相似问题时,即便是不知道准确的处理方法,也大概知道处理思路和关键点,再借助搜索引擎就能很快的搞定

没有头绪可能就是一脸蒙蔽,连搜索都不知道搜什么,这也是为什么大家一样的百度谷歌,有的人能快速找到解决方案,有些人不行,很多时候就在这里,对于网站,可能会收藏,但你真的会主动打开查看吗?


相关文章推荐阅读:

Google搜索成最大入口,简单谈下个人博客的SEO的更多相关文章

  1. 全栈前端入门必看 koa2+mysql+vue+vant 构建简单版移动端博客

    koa2+mysql+vue+vant 构建简单版移动端博客 具体内容展示 开始正文 github地址 <br/> 觉得对你有帮助的话,可以star一下^_^必须安装:<br/> ...

  2. 用mkdocs在gitee码云上建立一个简单的文档博客

    利用mkdocs建立简单的文档博客 一.概述 MkDocs 是一个用于创建项目文档的 快速, 简单 , 完美华丽 的静态站点生成器. 文档源码使用 Markdown 来撰写, 用一个 YAML 文件作 ...

  3. w10环境下Hexo博客搭建

    w10使用hexo+github手把手搭建自己的第一个博客 对一个程序员来说,博客的重要性不言而喻,不但可以积累知识,还可以更好的给别人分享自己的心得.今天就以时下比较流行的hexo博客搭建属于自己的 ...

  4. .NET作品集:linux下的博客程序

    博客程序架构 本博客程序是博主11年的时候参考loachs小泥鳅博客内核开发的.net跨平台博客cms,距今已有6年多了,个人博客网站一直在用,虽然没有wordpress那么强大,但是当时在深究.ne ...

  5. 从开发到部署,使用django创建一个简单可用的个人博客

    本文参考于: 简书-Django搭建简易博客教程:http://www.jianshu.com/p/d15188a74104 自强学堂-Django基础教程:http://www.ziqiangxue ...

  6. 【简单版】hexo博客搭建流程梳理

    前言 本文章会为你梳理一个搭建hexo博客的流程 相关网址: Docs: https://hexo.io/docs/ Themes: https://hexo.io/themes/ 安装hexo 准备 ...

  7. Word 测试下发布博客

    目录 语法.    3 NULL,TRUE,FALSE    3 大小端存储    4 类型转换    4 转义字符    5 运算符的优先级    5 表达式(a=b=c)    7 *pa++=* ...

  8. TP5中隐藏入口文件的问题 - CSDN博客

    使用phpstudy和linux部署的时候 tp5中的官方说明是在入口文件的同级目录下添加一个.htaccess文件 文件内容如下: <IfModule mod_rewrite.c>Opt ...

  9. Linux 下Wordpress博客搭建

    Wordpress # 下载安装文件 cd /usr/local/nginx/html/blog wget https://cn.wordpress.org/wordpress-4.8.1-zh_CN ...

随机推荐

  1. element-ui-——el-uploadexcel导入

    布局文件:(选择文件放在了弹框内部——即点击导入按钮后弹框显示,先下载模板再选择文件点击提交按钮才上传) )) { this.$notify({ message: '数据导入成功', type: 's ...

  2. Spring Cloud探路(二) Erueka客户端的建立

    接上篇 1.pom.xml与上篇一致 2.新建包及Application启动类 @Configuration @ComponentScan @EnableEurekaClient @EnableAut ...

  3. springboot中各个版本的redis配置问题

    今天在springboot中使用数据库,springboot版本为2.0.2.RELEASE,通过pom引入jar包,配置文件application.properties中的redis配置文件报错,提 ...

  4. HDU 1540 Tunnel Warfare (线段树)

    Tunnel Warfare Problem Description During the War of Resistance Against Japan, tunnel warfare was ca ...

  5. linux 基于 jiffy 的超时

    到目前为止所展示的次优化的延时循环通过查看 jiffy 计数器而不告诉任何人来工作. 但是最好的实现一个延时的方法, 如你可能猜想的, 常常是请求内核为你做. 有 2 种方 法来建立一个基于 jiff ...

  6. ZR7.26

    7.26 A 并查集维护,时间复杂度我写的貌似不大对,先鸽一鸽 B 敦爷:\(w\)是这个区间的最大值当且仅当他是这个区间内最大的 我们发现结合昨天课件内的并查集 发现我们每次不断合并的本质是把所有\ ...

  7. 【GYM101409】2010-2011 ACM-ICPC, NEERC, Western Subregional Contest

    A-Area and Circumference 题目大意:在平面上给出$N$个三角形,问周长和面积比的最大值. #include <iostream> #include <algo ...

  8. 【Docker】镜像分层存储与镜像精简

    Linux操作系统 Linux操作系统由内核空间和用户空间组成. 内核空间是kernel,用户空间是rootfs, 不同Linux发行版的区别主要是rootfs.比如 Ubuntu 14.04 使用 ...

  9. salesforce零基础学习(九十五)lightning out

    随着salesforce对lightning的推进,越来越多的项目基于lightning开发,导致很多小伙伴可能都并不了解classic或者认为不需要用到classic直接就开始了lightning的 ...

  10. 别怕,"卷积"其实很简单(下)

        文章来自我的CSDN同名博客,欢迎文末扫码关注~   定义 基于上一篇文章的通俗化例子,我们从基本概念上了解了卷积,那么更严格的定义是怎样的呢? 从数学上讲,卷积只不过是一种运算,对于很多没有 ...