这是什么
这项检查关注的是页面在底层 HTML 中实际提供了多少可见文字内容——这是搜索引擎和其他自动化工具在页面上任何 JavaScript 有机会运行并填充内容之前所读取的原始素材。当这些原始内容极少或完全缺失时,页面在这里就算作「实际上是空的」,即使页面在浏览器中加载完成后看起来完全正常、内容丰富。
浏览器最终展示的内容与页面开始时实际存在的内容之间的这种差距,常见于使用某些现代网站框架构建的网站,在这些框架中,内容是在页面初次加载后由 JavaScript 生成的,而不是从一开始就包含在内。
为什么重要
大多数搜索引擎能够运行 JavaScript,也确实经常最终会看到页面完全加载后的版本——但不总是如此,不是立即发生,也不是无限耐心地等待。一个完全依赖 JavaScript 才能显示任何内容的页面,在被可靠地读取、抓取和索引这件事上,冒了不必要的风险,相比之下,一个从第一次响应就包含真实、可读内容的页面就要安全得多。
这也是一个有用的早期预警信号,提示这可能是个 bug 而不是设计选择——一个本应显示内容、但原始 HTML 中几乎什么都没返回的页面,有时表明服务器端某处正在悄悄出错,而不仅仅是设计上加载慢。
如何解决
- 查看页面的原始 HTML 源代码(右键点击 → 「查看网页源代码」,显示的是 JavaScript 运行之前所交付的内容),检查你的主要内容是否真的以文字形式出现在那里。
- 如果它在原始源代码中缺失,但在正常浏览器视图中可见,那么你的内容很可能完全是由 JavaScript 在页面加载后生成的。
- 如果你使用的是现代 JavaScript 框架,可以研究「服务器端渲染」或「静态站点生成」选项,它们会生成一个已经包含真实内容的页面版本,而不是完全依赖浏览器去构建它。
- 如果这不是你预期的情况(你并没有把网站设计成这样运作),检查是否存在服务器错误或构建失败,可能导致页面渲染时没有包含任何预期的内容。
- 修改后重新运行你的 Launch Readiness 检查,确认现在页面的原始 HTML 中已检测到真实内容。