?
成年人的世界最基本的逻辑就是:这个世界根本不在乎你的感受
?
简明扼要
sitemap.xml
/canonical
/TDK等都能提高页面的曝光度文章概要
1. 为何SPA对SEO不友好
「传统网页开发模式」,网站内容(html)都是采用服务端渲染(SSR)的方式产出的。这样做,方便「爬虫」能够定位到网站内容。这个过程就是:爬虫发现你的网站内容,并且将其展现在大众面前。
但是,按照传统网页开发模式生成页面的过程存在一个致命问题。每当页面中「很小」的数据变更(例如:提交一个form
表单),服务端需要对「整个页面进行重新渲染」并通过网络将最新的页面传到客户端。
另一方面,客户端渲染(CSR)允许单页面应用(SPA)能够在页面不刷新的前提下,进行页面信息的动态获取和展示。在页面初始阶段,浏览器只需接受页面「最基本的结构信息」(html)然后其余的页面内容都是通过JS来获取或者展示。
当页面中的「部分」内容发生了变更,浏览器只需要向服务端发送用于获取该与该变更信息相关的AJAX。服务端在接收到指定的请求后,经过拼装处理,将浏览器想要的结果(通常是JSON的数据格式)返回。
虽然,SPA能够很好规避SSR渲染时数据更新需要刷新整个页面的弊端,但是由于SPA在页面初始阶段,只返回了页面的基础架构,后续页面内容都是通过JS动态获取的。这样「很不利于爬虫对网站后续内容的收录」。
?
SPA对SEO不友好,是由其「后续」页面内容存在「滞后性」导致的
?
2. 解决方案
2.1 避免使用Google的Ajax爬虫方案
在2009年,Google 发布了一种用于解决SPA对SEO不友好的应变方案。
前置知识:何为Goolebot
?
谷歌机器人是一种特殊的软件,通常被称为蜘蛛,被设计用来在公共网站的页面上爬行。它遵循从一个页面到下一个页面的一系列链接,然后将找到的数据处理成一个集体索引。
可以把它想象成一个拥有不断扩展的库存的图书馆
?
在讲方案前,我们先简单介绍一下,Googlebot
对网站应用的处理流程
当 Googlebot 尝试通过发出 HTTP 请求从抓取队列中抓取某个网址时,它首先会检查网页是否允许抓取。Googlebot 会读取 robots.txt
文件。如果此文件将该网址标记为「disallowed」,Googlebot 就会跳过向该网址发出 HTTP 请求的操作,然后会跳过该网址。
接下来,Googlebot 会解析 HTML 链接的 href 属性中其他网址的响应,并将这些网址添加到抓取队列中。若不想让 Googlebot 发现链接,使用 nofollow
机制
抓取网址并解析 HTML 响应非常适用于「经典网站或服务器端呈现的网页」(在这些网站或网页中,HTTP 响应中的 HTML 包含「所有内容」)
Google的Ajax爬虫方案
该方案包含很多操作步骤。
?_escaped_fragment_=”
并将其对应的HTML信息传入爬虫
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/180407.html