一位出版商通过 Twitter 向 Google 的 John Mueller 询问 Google Search Console (GSC) 在其网站上报告 5xx 错误的问题。 本文探讨 GSC 报告收到 5xx 错误的可能原因和解决方案。
推文说:
“我收到服务器错误 (5xx)。 我的新帖子没有索引。 有什么建议可以解决这个问题吗?”
发布者随后发布了一个 GSC 消息截图:
GSC 指向帮助页面的链接 就是这样说的:
“报告的这一部分描述了该页面是否可以被谷歌索引。
但是,肯定的结果并不能保证它会出现在搜索结果中。
搜索结果中的外观还要求页面及其结构化数据符合质量和安全准则。
URL 检查工具不考虑手动操作、内容删除或临时阻止的 URL。”
该帮助页面中与上述用户相关的部分是“页面是否可以被谷歌索引。”
谷歌的约翰穆勒回应了这条推文,暗示它不是谷歌,而是有问题的网站。
这是您需要修复的网站上的错误。
— 🍌 约翰🍌 (@JohnMu) 2020 年 7 月 27 日
这就是导致 500 错误的原因
当出现导致网站或网页无法呈现的严重错误时,服务器会发送 500 条响应消息。
它有时表示 CMS 中的编码错误导致页面或整个站点无法呈现。 PHP 代码可能很繁琐,有时像省略逗号这样的小东西就足以破坏网站。
这就是为什么在编辑代码时在服务器上保留原始文件的副本(重命名)并在编辑该文件的不同版本之前将原始未编辑文件的备份副本保存在您的计算机上总是一个好主意。
这样,如果事情变糟,您可以随时上传原件并重新开始。
500 错误的其他来源是:
- 配置错误的 .htaccess 文件
- 核心 CMS 配置文件包含错误信息,例如数据库信息
- PHP版本与CMS不兼容
- CMS 模板中的代码以添加错误的方式进行了更改
以上是我曾经犯过的所有错误,导致了 500 错误。 每个编辑网站代码的人都会遇到这种情况。 没有人是完美的。
如果 Google 报告 500 错误但网站对您来说可以正常工作怎么办?
在某些情况下,Google 可能会报告 5XX 错误,而当您访问您的网站时它可以正常工作。
在最好的情况下,这可能是因为您的虚拟主机正在更新。
但是……显示给 Google 而不是您的 5xx 错误通常可能是您的服务器环境出现问题的征兆。
这可能是共享托管环境在 Google 访问您的网站时暂时下降的缺点之一。
有时会导致这种错误的是机器人访问者的大量负载,无论是对您的站点还是对整个共享服务器环境。
这通常发生在晚上,当谷歌和黑客机器人/爬虫机器人同时攻击该网站时,这会导致一个动力不足的服务器暂时开始发出 5xx 错误响应。
如果黑客机器人或爬虫机器人严重攻击您的服务器,则共享服务器可能会开始提供 500 错误,因为它已用完分配的资源。
这可能会影响大型网站以及论坛等资源密集型网站。 因此,升级您的虚拟主机可能是一个警钟。
在虚拟专用服务器 (VPS) 环境甚至专用服务器的情况下,500 错误可能是由于服务器管理员设置不当造成的。
不正确的设置可能涉及诸如指向 VPS 上托管的网站的服务器资源不足等问题。 一个例子是内存分配不足。
我问 斯科特·波尔克Bruce Clay, Inc. 的高级搜索分析师对此进行了讨论,他建议可能的问题是数据滞后。
斯科特说,
“但这似乎更像是一个借口。
我怀疑他们在索引和工具之间存在数据滞后问题。
例如,为什么页面没有在 GSC 中显示为索引,而是在站点中显示:搜索?”
500 个服务器响应代码
如果 Google Search Console 报告了 5xx 服务器响应代码,但该站点对您来说运行良好,则可能是由于服务器无响应导致的抓取问题,尤其是在夜间。
要测试您的服务器,您可能希望使用 Screaming Frog 之类的工具对您的网站进行爬网,并不断增加同时爬网该网站的用户代理的数量。
或者,您也可以使用 Xenu Link Sleuth 等免费工具同时在网站上运行大量爬虫。
如果工具报告 500 个错误响应,那么这可能表明服务器无法处理高水平的流量。 造成这种情况的原因有很多,包括 CMS 中的设置不佳、服务器级别的资源分配不当、服务器过载或许多其他原因,通常与您的站点或服务器有关。