错误代码并不有趣,对于那些莫名其妙、难以理解的错误代码更是如此。505 错误就是一个神秘而令人困惑的例子,它可能在意想不到的地方出现,比如您网站上的外链。由于互联网上没有全面的相关文章,我们决定彻底解决这个问题。让我们来看看 505 错误代码的含义以及如何解决它。
505 错误代码含义详解
![[Error in Explorer]](https://cloudzy.com/wp-content/uploads/image3-5.png)
错误 505 代表「HTTP 版本不受支持」,这意味着客户端请求使用的 HTTP 版本不被服务器识别。大多数情况下,问题在于网络服务器运行的是过旧的 HTTP 版本。这种情况常见于 Apache 或 Nginx 等网络服务器长时间未更新的场景。
不过有时候情况恰好相反。如果用 Internet Explorer 这样的旧浏览器访问较新的网站,你可能会经常看到 505 错误。这种情况下,问题不在 HTTP 服务器,尽管它被称为服务器错误。
根据你是否有服务器访问权限,有几种方法可以避免这个错误。我们来逐一介绍。
Effective 解决 HTTP 505 错误的方法
如何解决 505 错误:客户端解决方案
如果浏览器显示 505 错误,有两种快速解决方法。首先检查你是否在使用过时的浏览器,比如微软的 Internet Explorer。在这种情况下,你的浏览器试图用旧版 HTTP 连接现代网络服务器。最好的解决办法是改用现代浏览器,比如 Firefox 或 Google Chrome。
如果你用的是现代浏览器且遇到了 505 错误,最快的解决办法就是清除浏览器缓存。为了加快加载速度并减少网络流量,大多数浏览器都会缓存你访问过的网站的某些内容。有时候这些mes,缓存和实际网站内容在一段时间后不同步,可能导致 505 "HTTP version not supported" 这样的错误。当 例如,我们会告诉你如何清除 Chrome 浏览器中的缓存。
Chrome 提供了多种管理和清除缓存的方法,但最快的方式是这样的:
- 在 Chrome 中按 F12
- 点击并按住地址栏旁的刷新按钮
- From the menu that appears, select “Empty Cache and Hard Reload”
![[Chrome 硬刷新菜单]](https://cloudzy.com/wp-content/uploads/image1-6.png)
如何解决 HTTP 505 错误:服务器端解决方案
如果你运行的网站基于 WordPress,或者使用老旧的网络服务器或主机商托管,你可能能够解决 505 错误。
Start Blogging
在顶级硬件上自托管 WordPress,搭配 NVMe 存储和全球低延迟。选择你喜欢的 Linux 发行版。
获取 WordPress VPS检查 HTTP 版本
解决这个问题的第一步是检查你的网络服务器实际使用的 HTTP 版本。你可以在 Windows 中使用 TelNet 或者 curl command in Linux. Since TelNet 网上有很多教程可以参考,我们来讲讲如何用 Linux 命令行检查 HTTP 版本。
首先,我们需要打开终端。在大多数发行版中,按 Ctrl+Alt+T 即可快速打开;在所有发行版中,也可以从应用菜单中打开。终端打开后,输入以下命令并按 Enter 键
curl --head http://example.site/
当然,你需要把 "example.site" 替换成你自己网站的地址。执行这个命令后,你会看到一个属性列表,看起来大概是这样的:
![[Linux 终端请求 HTTP 版本]](https://cloudzy.com/wp-content/uploads/Screenshot-from-2021-07-17-11-53-29.png)
不过在 WordPress 上出现这个问题时,原因就不同了,需要换个思路来解决。我们一起来看看。
WordPress Problem
有时候,WordPress 插件会尝试在外链路由中连接到第三方网站,这可能导致问题。比如说,你想把客户引导到你在 Amazon 上销售的产品。你可能使用静态 URL 链接到你的产品,这本身完全没问题,但当有人从你的网站点击这些链接时,他们会看到 505 错误。这通常是因为插件以及第三方网站的 HTTP 版本与实际目标网站的版本不一致。要测试这种情况,你可以用上面介绍的方法 curl 检查你网站上的 HTTP 版本和你链接到的版本。
WordPress Solution #1
解决这个问题有两种方法。如果你只用了几个插件,我们建议逐个禁用插件来找出问题所在。找到后可以换成其他插件或自己写代码替换。但这种方法并不总是可行的。你可能装了太多插件,找不到是哪个导致了 505 错误,或者即使找到了也舍不得删除。这就是为什么下面这个方法可能值得一试,尽管它只是一个变通方案。
Start Blogging
在顶级硬件上自托管 WordPress,搭配 NVMe 存储和全球低延迟。选择你喜欢的 Linux 发行版。
获取 WordPress VPSWordPress Solution #2
这种方法涉及禁用 WordPress Link Checker,它用来查找并报告失效链接。通常这是个有用的工具,可以帮你清理不需要的旧链接。但如果它因为插件问题而把正常链接报告为失效,就可能伤害你的网站。这些误报会让网站分析变得不可靠,大量虚假的失效链接还会拉低你的SEO排名。为了避免这些问题,我们需要对那些造成误报的网站关闭链接检查功能。
找到所有仍然返回 505 错误代码的有效链接后,可以按照以下步骤将其从链接检查器中排除:
- Go 到你的 WordPress 仪表板
- Go to Settings → Link Checker → Which Links to Check
- 将域名添加到排除列表
- 点击保存更改
A Simpler Way?
就这样。这应该能解决所有情况下的 505 错误代码。当然,也可能没那么简单就消失了。那么如何解决 HTTP 505 错误呢?一个简单的办法是放心交给我们。我们在顶级基础设施上运行的优化型 WordPress VPS 采用最新软件版本,确保你不会遇到这类错误。你可以把更新和备份交给我们处理,把时间用在更有价值的事情上。来看看我们的 WordPress VPS 解决方案 here.