如何修复Lighthouse返回的错误:NOT_HTML。提供的页面不是square/weebly网站的HTML(用作MIME类型)错误?
我正在尝试在 Google Search Console 中为 Weebly/Square 网站使用 PageSpeed Insights 并收到错误消息:
灯塔返回错误:NOT_HTML。提供的页面不是 HTML(作为 MIME 类型)
一开始它对我有用(我测试了 2-3 次)。我调整了一些图像的大小并再次尝试。从那时起收到此错误。
Square 的支持表明它不站在他们一边。
回答
灯塔返回NOT_HTML至少有三个原因:
-
该页面实际上是作为
text/plain或没有任何有效的 Content-Type 提供的,这可能是因为浏览器或机器人检测。您可以通过使用与 Lighthouse 相同的 User-Agent 发出请求来重现这一点:
curl -IA "Mozilla/5.0 (Linux; Android 7.0; Moto G (4)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.175 Mobile Safari/537.36 Chrome-Lighthouse" 'https://www.rustichappyplace.com/' -
网络服务器支持 HTTP/2 或 QUIC,但没有完全按照 Lighthouse 的预期实现协议,导致 Content-Type 被错误检测。
您应该能够在最新的 Google Chrome 或 Chromium Nightly 浏览器中重现该错误。在这种情况下,除了要求您的主机商禁用这些功能或更新服务器软件之外,您几乎无能为力。
-
Lighthouse 有一个由于 Web 服务器使用的某些功能而触发的错误。
当前(2021 年 3 月)Google PageSpeed Insights 上的 Lighthouse 似乎存在一个错误,
NOT_HTML当在 Web 服务器中激活HTTP/2 Early Hints时,该错误会在某些星座中产生。我今天遇到了类似的问题,发现H2EarlyHints在 Apache 2.4.46中禁用可以防止出现此问题。如果您的托管商使用该功能来加速页面加载,请让他们暂时禁用它。