在现代的 Web 世界中,单页面应用(SPA)已经变得越来越普遍。它们的交互和用户体验对于在线业务至关重要。然而,对于搜索引擎的优化(SEO)而言,由于 SPA 应用的动态加载,往往难以被搜索引擎索引。本文将介绍如何通过谷歌爬虫实现 SPA 页面的 SEO 优化。
谷歌爬虫介绍
谷歌爬虫是搜索引擎谷歌的搜索引擎程序,也被称为“Googlebot”。它通过收集网页的内容,建立索引并提供有关搜索结果的信息。Googlebot 遵循的是“网络爬虫协议”,该协议指定了爬虫可以或不可以访问的 URL。这是通过 robots.txt 文件来实现的。
SPA 页面的困境
由于 SPA 页面的 HTML 是动态生成的,无法在服务器端被完全生成。这就导致了谷歌爬虫等搜索引擎无法获取页面的实时内容,这对 SEO 最为不利。
当然,SPA 页面并不是一蹴而就。它们提供了一个有效的解决方案:使用谷歌爬虫的渲染程序来截取应用程序渲染后的 HTML。这个功能称为“动态渲染”,谷歌爬虫可以通过这个功能获取到 SPA 应用被渲染后的 HTML。但是,这个功能存在一些限制和要求。下面将为您进行介绍。
动态渲染的限制和要求
1. 网站的页面必须被使用 AJAX 或浏览器端渲染技术构建
这是使用动态渲染获取 SPA 储量中采取的首要要求。你可以使用 React、Angluar、Vue 等前端的 JavaScript 框架来实现这一点。
2. 谷歌爬虫必须要验证你的站点
如果你的站点不设置验证,谷歌爬虫是无法获取到站点的内容。因此,一定要在 Google Search Console 中添加您的站点。在其中验证您的站点以获得更好的 SEO 优化效果。
3. SPA 页面必须有一个“带有可恢复 URL”的首屏
由于 HTML 必须针对谷歌爬虫进行构建,因此必须将 HTML 内容尽可能的预先加载到页面中。这个 HTML 必须可以展示一些基础的页面内容,例如网站的标题、头部导航栏、页脚状态等。 这些信息可以被谷歌爬虫所看到,并可以将它们添加到 Google 搜索的结果中。
动态渲染的实现
我们现在已经知道动态渲染的限制和要求。那么这个行为是如何被实现的呢?让我们看一下一些核心代码:
-- -------------------- ---- ------- --------- ----- ------ ------ --------------------- ----- --------------- ------------ ------- ------ ---- --------- --- ------ -------- ------------------------ - ----------------------------------- --------- ------- -------------------------- ------- -------
解释
在这个示例中,我们使用了“服务端渲染”来渲染 HTML。同时,我们还为该例子添加了动态渲染所需要的代码。
在 HTML 的 <head> 部分,我们添加了该行代码:
<meta name="fragment" content="!">
这告诉谷歌爬虫这个页面需要进行动态渲染。在 HTML 的 <body> 部分,我们添加了
最后,我们还为页面设置了一个 JavaScript 对象 INITIAL_STATE,该对象是在服务端被生成的,并被嵌入 HTML 中。JavaScript 应用程序将使用这个对象在客户端进行渲染。
结论
动态渲染是 SPA 应用程序用于 SEO 优化的强大工具。当用于 SPA 应用程序时,动态渲染可以让谷歌爬虫像使用 Ajax 请求一样获取页面的内容,并对搜索引擎索引产生积极影响。
当您使用动态渲染技术时,请确保尽量预加载 HTML 内容、验证您的站点、使用服务器端渲染,以及像 Google Search Console 等工具中配置。这些操作可以让你的网站获得最佳的 SEO 优化体验,并带来更多的流量和商业收益。
另外,请注意,本文的示例代码仅仅是在 SEO 技术上为您提供帮助,并不能代表良好的代码风格。更好的代码组织和架构可以使您的代码更为可读、更容易维护,且更佳稳健。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/671696e0ad1e889fe21d24f5