0

我们一直在努力使用 Page Speed Insights 和 Google Search Console 始终如一地加载我们的网页。它是一个没有 SSR(服务器端渲染)的 Angular SPA。

当我对我们的网站进行速度检查时,有时它会给出 60-70(移动)的预期分数,并且它会显示我们的网站在图像中正确呈现。但其他时候,它返回完美的 100(再次移动),但只显示我们包含在原始 HTML 中的页面部分,根本没有执行任何 JS。我附上了下面的两张图片。

似乎问题在于有时它不等待 JS 渲染页面并假设页面已完全加载。

因此,我在这里有几个问题: - 这些爬虫如何决定网页何时完全加载?- 我们如何确保 Google Crawler 始终看到我们希望它看到的内容?

我知道 SSR 可能是唯一能保证它的解决方案,但是不断从谷歌的人那里得到支持 SPA 的提示,但随后又不断发现新的证据表明支持存在相当多的问题,这非常令人沮丧。

加载的网页 未加载网页

4

1 回答 1

0

因此,您遇到的问题是由于您的聊天小部件。(我相信,不可能确定)

页面加载,然后在一段时间(大约 5 秒)后,它似乎加载了聊天小部件 JS 等(这可能是出于性能考虑)。

然而,Lighthouse(PSI 背后的引擎)所做的是等待 CPU 空闲和网络空闲来计算您的分数。

不确定网络空闲的时间,但 CPU 空闲正在寻找 5 秒的“安静时间”,作为计算First CPU Idle,Max first input delay和何时time to interactive发生(主要是First CPU idle)的一部分。

我猜这取决于网络延迟等。有时整整 5 秒过去了给你一个很好的分数,其他时候小部件开始在 5 秒内加载,所以它考虑在内。

获得分数的最准确方法是使用 Chrome Audit 并更改为“Applied Slow 4G, 4x CPU Slowdown”,因为这样simulated可以放大这样的行为。

于 2019-11-15T07:33:26.770 回答