自学内容网 自学内容网

CSR、SSR、SSG

https://juejin.cn/post/7162775935828115469?searchId=20240925152649DA18B30E9134FD880640#heading-4

客户端渲染(Client-Side Rendering, CSR)在SEO方面存在一些不利因素,主要原因包括:

  1. 初始加载内容的缺乏:CSR依赖于JavaScript来动态生成页面内容。当搜索引擎爬虫访问一个使用CSR技术构建的网站时,它们最初看到的是空壳HTML文档,只有基本的结构和脚本标签。真正的内容是通过执行JavaScript代码后从服务器获取并插入到DOM中的。如果爬虫不能或没有正确执行这些JavaScript代码,它就无法索引页面的实际内容。

  2. JavaScript执行能力:虽然像Google这样的主流搜索引擎已经提高了对JavaScript的支持,并能够执行部分JavaScript以发现更多内容,但并不是所有的搜索引擎都能做到这一点。此外,即使支持JavaScript的搜索引擎也可能不会完全模拟用户行为,比如滚动页面或与页面交互,这意味着某些动态加载的内容可能仍然被忽略。

  3. 延迟索引:由于需要等待JavaScript执行完毕才能看到完整的内容,这可能导致搜索引擎爬虫花费更长的时间来抓取和理解页面。对于更新频繁的网站来说,这种延迟可能会导致新内容不能及时被索引。

  4. 性能问题:CSR通常会导致较高的首次内容绘制时间(First Contentful Paint, FCP)和首次有意义绘制时间(Time to Interactive, TTI),因为用户必须等待所有必要的JavaScript下载、解析并执行之后才能看到有用的内容。这对用户体验有负面影响,而用户体验是现代SEO中越来越重要的因素之一。

  5. 预渲染解决方案:为了解决这些问题,开发者可能会采用预渲染(Prerendering)等技术来提供给搜索引擎预先渲染好的静态版本,但这增加了额外的技术复杂性和维护成本。

  6. 链接发现:在纯CSR应用中,如果导航链接也是通过JavaScript动态添加的,那么搜索引擎可能难以发现和跟随这些链接,从而影响整个站点的索引覆盖率。

为了克服这些挑战,许多开发团队转向了SSR(Server-Side Rendering)或SSG(Static Site Generation),这两种方法都可以确保搜索引擎直接接收到完整的HTML内容,从而提高SEO效果。不过,随着技术的进步,CSR也可以通过适当的优化手段改善其SEO表现。

Server-Side Rendering (SSR)

  1. 即时内容呈现:当搜索引擎爬虫访问一个采用SSR的网站时,它会接收到完整的HTML文档,这意味着页面的内容是立即可见的,而不需要JavaScript来渲染。这对搜索引擎来说非常重要,因为许多爬虫最初可能不会或不能很好地执行JavaScript。

  2. 更好的索引:由于内容是在服务器端就完全渲染好的,所以搜索引擎更容易理解和索引页面上的所有信息,包括文本、链接等,这有助于提高搜索排名。

  3. 改进的性能感知:虽然实际上加载速度取决于多种因素,但SSR可以让用户看到首屏内容更快,这对于SEO中的用户体验指标(如页面加载时间)是有益的。

Static Site Generation (SSG)

  1. 预构建页面:使用SSG,网站的所有页面都是在构建时预先生成的纯静态HTML文件。这样的页面对搜索引擎非常友好,因为它们可以直接被爬取并索引,没有动态内容加载延迟的问题。

  2. 快速加载:静态站点通常比需要后端处理请求或客户端脚本执行的动态站点加载得更快。较快的加载速度不仅改善了用户体验,也是Google等搜索引擎排名算法中的一个重要因素。

  3. 可靠性与安全性:由于没有服务器端逻辑运行,静态站点减少了潜在的安全风险,并且提供了更高的可用性。这些特性间接地支持了良好的SEO表现。

  4. 降低托管成本:静态站点通常可以部署到CDN上,这样不仅能提供极快的全球访问速度,还能显著减少服务器资源消耗及相关的运营成本。


原文地址:https://blog.csdn.net/m0_47999208/article/details/142518994

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!