对于高级SEO来说,需要掌握的知识比SEO入门者要多得多。其中深刻理解搜索引擎与网站服务器的互动是关键部分,这里包含了许多HTTP协议的知识点以及前后端开发的技术。
JavaScript SEO是SEO中的上乘武功笔者从事SEO近二十年,可以体会到所有上级SEO的难点都在于一些最底层而细节的东西。如果我们把TDK(Title-Description-Keywords)作为SEO中最Low的内容,SEO中的内容营销部分和外链建设作为中下级部分,技术SEO(Technical SEO)作为SEO中中上级的部分,那么JavaScript对于SEO的影响便在金字塔的顶部。本文,我们仅仅从结论来介绍SEO中的JavaScript到底怎么玩。
Technical SEO有多重要?听说最近SearchEngineLand的索引被清空的故事了吗?相对应地有些引擎处在顶部如Google,它更好更聪明地理解你的JS资源,并知道哪些需要运用到渲染中;接下来是Bing,它并不能像Google那样好地进行JS的支持,据说只对部分网站进行渲染;然后是像百度那样的引擎,还未支持JS加入渲染,通常只渲染CSS,只是特定于某些负面算法对一些恶意站点进行检测时才使用部分JS。(如果你发现access.log中有访问js的百度蜘蛛,那么请通过IP验证其真实性。)
在听推外介绍之前,请注意本文全部内容仅仅适用于当下情况。SEO是发展飞速的行业,今天的不支持并不代表明天一样不适用。如果你不想花时间听天书,那么只要记住这个结论:为了你的网站能最好地普遍地被各个大大小小的搜索引擎所爬行、索引、渲染、排名,那么请避免使用JavaScript来生成任何网页中的内容。
JavaScript和(Google)SEO,顶级SEO从业者必须要知道的15点- Googlebot会毫无意外地请求你的js文件。Googlebot可以包含js和css渲染你的页面并发现隐藏内容,但并不保证会这么做。Googlebot目前使用的是相当于Chrome 41(一个三年前的版本)的一个Headless Browser,而不是最新的内核来进行渲染。Google把这个Headless Browser成为WRS,Web Rendering Service。如果Googlebot发现你的网站相应变慢会减少爬行预算(Crawl Budget),包括减少对js文件的请求。如果Googlebot在渲染过程中执行你的脚本并发现消耗太多资源,则会放弃。建议5秒钟是执行js脚本的上限。Googlebot由于需要等待索引的文件资源和处理资源会进行“两波索引”。见下图:
在笔者领导和参与的众多大大小小的SEO项目中,只存在一个失败的原因:“傲娇的网站攻城狮们”。
如果你觉得下面这些反馈听起来很耳熟,那么你一定能体会到为什么这么说:
不改。就不改。影响性能,不改。没空改,等空下来。你怎么证明非要这么改?不是我们的KPI,先放放怎么做网站要你教?你说的都对,你自己改吧。遗憾的是SEO是数字营销中和技术部门最紧密联系的部分,如果没有高层管理者的参与并提供优先级,技术SEO和JS SEO很难有所建树。顶级SEO要掌握的远比SEO工作本身多得多。唉……