对Hexo博客进行了SEO优化并支持了Brotli压缩算法

这两天抽了个时间给Hexo博客进行了一番SEO优化,在已经有谷歌版站点地图(generator-seo-friendly-sitemap)基础上新增了百度版站点地图(hexo-generator-baidu-sitemap),结合Hexo博客站点实际需要根目录里添加了 robots.txt 文件。截止到今天为止百度、谷歌已经开始正常的收录和爬取本博客了。

给Hexo博客添加 robots.txt 文件其实很简单,只需要在Hexo的source目录里编写保存 robots.txt 文件即可,具体内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
User-agent: *
Allow: /
Allow: /archives/
Allow: /categories/
Allow: /about/

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

Sitemap: https://hexo.imydl.tech/sitemap.xml
Sitemap: https://hexo.imydl.tech/baidusitemap.xml

robots.txt

robots.txt(统一小写)是一种存放于网站根目录下的ASCII编码的文本文件,它通常告诉网络搜索引擎的漫游器(又称网络蜘蛛),此网站中的哪些内容是不应被搜索引擎的漫游器获取的,哪些是可以被漫游器获取的。因为一些系统中的URL是大小写敏感的,所以robots.txt的文件名应统一为小写。robots.txt应放置于网站的根目录下。如果想单独定义搜索引擎的漫游器访问子目录时的行为,那么可以将自定的设置合并到根目录下的robots.txt,或者使用robots元数据(Metadata,又称元数据)。
robots.txt协议并不是一个规范,而只是约定俗成的,所以并不能保证网站的隐私。注意robots.txt是用字符串比较来确定是否获取URL,所以目录末尾有与没有斜杠“/”表示的是不同的URL。robots.txt允许使用类似”Disallow: *.gif”这样的通配符


目前看谷歌响应速度最快了,几乎是实时就完成了。百度感觉至少24个小时以上才开始响应。同时还发现Hexo这种纯静态博客,搜索引擎是真的非常友好!
本来还想给Hexo加入CSS/JS代码压缩的,因为我的Hexo博客是部署在自己的VPS上的,所以借助Nginx的ngx_brotli模块就可以轻松实现直接服务器端使用Brotli压缩算法自动压缩Hexo博客的静态文件了!很完美有没有!
并且在编译添加了ngx_brotli模块后,还会引入一个$brotli_ratio变量,这个变量会显示当前静态文件的Brotli压缩比,放到Nginx站点的日志文件里就可以统计和看到每个静态文件的压缩比了。威武呀!

Brotli是一个Jyrki Alakuijala和Zoltán Szabadka开发的开源数据压缩程序库。Brotli基于LZ77算法的一个现代变体、霍夫曼编码和二阶上下文建模。在Chrome、Opera和Firefox中,它已被用于加速万维网的传输速度。类似Google的压缩算法zopfli,brotli这个名字来自瑞士的烘培产品brötli。
Brotli最初发布于2015年,用于网络字体的离线压缩。[8]Google软件工程师在2015年9月发布了包含通用无损数据压缩的Brotli增强版本,特别侧重于HTTP压缩。其中的编码器被部分改写以提高压缩比,编码器和解码器都提高了速度,流式API已被改进,增加更多压缩质量级别。新版本还展现了跨平台的性能改进,以及减少解码所需的内存。
与常见的通用压缩算法不同,Brotli使用一个预定义的120千字节字典。该字典包含超过13000个常用单词、短语和其他子字符串,这些来自一个文本和HTML文档的大型语料库。[9][10]预定义的算法可以提升较小文件的压缩密度。
使用brotli取代deflate来对文本文件压缩通常可以增加20%的压缩密度,而压缩与解压缩速度则大致不变。使用Brotli进行流压缩的内容编码类型已被提议使用“br”。


明月目前所有的博客站点无论何种平台都是支持Brotli压缩算法的,并且是GZip和Brotli压缩算法双支持,用户客户端支持哪个算法就用哪个算法。Brotli压缩算法目前给明月的感觉是在谷歌Chrome浏览器下表现是最完美的,特别是使用了CDN后,有了Brotli压缩算法加持CDN流量消耗至少减少20%以上,给力不?

明月登楼 wechat
欢迎您扫一扫上面的微信公众号,订阅我的博客!