SEO
搜索引擎优化(英语:search engine optimization,缩写为SEO)是透过了解搜索引擎的运作规则来调整网站,以及提高目的网站在有关搜索引擎内排名的方式。由于不少研究发现,搜索引擎的用户往往只会留意搜索结果最前面的几个条目,所以不少网站都希望透过各种形式来影响搜索引擎的排序,让自己的网站可以有优秀的搜索排名。当中尤以各种依靠广告维生的网站为甚。
预渲染
预渲染指用户请求文档前便已经是渲染完成的文档。若用户请求无预渲染的SPA页面,最先得到的是一个空页面,没有相应的数据,不利于SEO。预渲染后的页面已经实装了数据,页面即是用户请求的最终页面。
原理
通过代码控制无头浏览器(Headless browser),访问网页路由,得到渲染完成后的数据,并保存下来。访问时便不会出现文档404错误。而且每一个预渲染的界面都是一个SPA应用。不会影响用户体验。
Bbob 预渲染插件
若想要在Bbob中解决seo问题,就必须使用预渲染插件bbob-plugin-prerender。插件由我开发,直接使用即可。需要注意的是,此插件需要主题支持。Bbob自带的主题已经默认支持。若自己开发的主题想要支持也十分简单,请到插件项目网页查看详情。
使用
先安装,请将以下命令中的v1.0.0替换为你想要的版本。
bbob add -a https://github.com/Reknij/bbob-plugin-prerender/releases/download/v1.0.0/bbob-plugin-prerender.rar
安装完成后,只要主题支持,默认启用预渲染。执行bbob g
,可以看到插件已经起作用。执行bbob p
预览你的博客页面,打开Chrome开发者工具可以看到网页请求的页面已包含最终数据,而不是一个空页面。
注意
使用此插件,必须将Bbob自带插件BuildWebArticleJson
的配置文件中shortAddress
启用为true
。
// ./configs/BuildWebArticleJson.config.json
{
"shortAddress": true, //change to true
"shortAddressEndWithSlash": false
}
倘若要你的博客不出现301重定向,可以将shortAddressEndWithSlash
改为true
。BuildWebArticleJson
插件会自动在短地址后面加上'/'。