📜  如何解决常见的 HTTP 错误代码?

📅  最后修改于: 2022-05-13 01:56:28.299000             🧑  作者: Mango

如何解决常见的 HTTP 错误代码?

几乎每个人都遇到过很多次,当我们想访问任何网站时,屏幕上会出现一些编码消息,表明我们无法访问该网站。这些带有错误消息的代码基本上称为 HTTP 错误代码。 HTTP(超文本传输协议)是客户端与服务器交互的过程。访问网络服务器时,服务器接收到的每个 HTTP 请求都会以 HTTP 状态码进行响应,该状态码为 3 位,分为 5 个不同的类别。

Series Begin WithCode Indication
1**Informational
2**Success
3**Redirection
4**Client Error
5**Server Error

  • 该系列以 1** 开头,2** 和 3** 是功能齐全的请求,将在下面讨论。
  • 该系列以 4** 开头,代表客户端错误,将在下面讨论。
  • 该系列以 5** 开头,代表服务器端错误,将在下面讨论。

注意: 4** 和 5** 可以通过 Troubleshoot 解决。
1** 信息性:此类中的 HTTP 状态代码旨在为临时性的,由服务器在发送任何完整且完整的第二个响应之前发送。

  • 100 – Continue:此状态码表示服务器仅接收到部分请求而没有任何问题,如果请求已经完成,客户端应继续请求或忽略响应。
  • 101 – Switching Protocols:此状态码是响应客户端的升级请求标头而发送的,并指示服务器正在切换到的协议。
  • 102 – 处理中:此状态码用于通知客户端服务器已接受完整请求但尚未完成。

2** 成功:此类中的 HTTP 状态代码表示请求成功完成。

  • 200 – Ok:此 HTTP 状态代码是成功 HTTP 请求的标准响应。响应返回的信息取决于请求中使用的方法,例如:GET 或 POST 或 HEAD 或 TRACE。
  • 201 – Created:此 HTTP 状态代码表示由于成功完成请求而创建了新资源。
  • 202 – 已接受:此 HTTP 状态代码表示已收到请求并已接受处理,但可能不会立即处理。
  • 203 - 非权威信息:此 HTTP 状态代码表示请求已被接收和理解,并且作为响应发送回客户端的信息来自第三方而不是来自原始服务器。
  • 204 - 无内容:此 HTTP 状态码表示服务器已成功处理请求,但需要返回任何内容,或者可能不需要发回任何数据。
  • 205 - 重置内容:此 HTTP 状态代码从服务器发送到客户端。它请求重置发送原始文档的内容。
  • 206 – 部分内容:此 HTTP 状态代码表示由于客户端发送的范围标头,服务器仅发送所请求资源的一部分。
  • 207 - 多状态:多状态响应传达有关多个资源的信息,其中消息正文后跟 XML 消息并包含单独的响应代码。

3** 重定向:此类中的 HTTP 状态代码表示客户端需要执行其他操作才能完成请求。

  • 300 – 多项选择:此 HTTP 状态代码指示客户端应选择其中之一的资源的多个选项。它可用于表示相同内容的不同文件格式选项或不同媒体演示。
  • 301 – 永久移动:此 HTTP 状态代码表示所请求资源的 URL 已永久更改为新 URL。响应还应该包括新的 URL,以后对该资源的任何引用都应该使用新的 URL。
  • 302 - 找到:这个 HTTP 状态码表示客户端请求的资源暂时移动到了一个新的 URL。临时 URL 应由响应中的 Location 字段给出。
  • 303 – 查看其他:此 HTTP 状态代码表示可以使用 GET 方法在另一个 URL 中找到响应/资源。当收到响应 POST/PUT/DELETE 时,应假定服务器已收到数据,并且应使用单独的 GET 消息发出重定向。
  • 304 - 未修改:此 HTTP 状态代码用于缓存目的。这意味着该资源自上次请求以来尚未修改。通常,在缓存文档时,会存储它被缓存的日期。下次查看文档时,客户端会询问服务器文档是否已更改。如果没有,那么客户端只是从缓存中重新加载文档。
  • 305 – 使用代理:此 HTTP 状态代码表示客户端请求的资源可以通过位置标头中提到的代理访问。必须在响应中提供代理的地址。由于安全原因,并非所有客户端都实现了这一点。
  • 306 - 切换代理:此 HTTP 状态代码指示后续请求应使用指定的代理。但它已不再使用,并为将来保留。
  • 307 - 临时重定向:这里服务器发送 HTTP 响应以指示客户端使用与上一个请求中使用的相同方法从另一个 URL 获取请求的资源。

4** 客户端错误:此类中的 HTTP 状态代码指示从技术上讲是客户端请求问题导致的错误。

  • 400 – 错误请求:此错误代码表示发送到服务器的 HTTP 请求语法无效。
    故障排除步骤:
    • 检查 URL(统一资源定位器)中的错误,这是最常见的原因。
    • 与该网站链接的 Cookie 可能已损坏,因此请清除浏览器的 Cookie 和缓存。
    • 尝试在不同的网络浏览器上打开相同的网页。
  • 401 - 未经授权:此错误代码表示用户尝试访问资源而没有适当的身份验证。这样用户必须提供凭据才能查看受保护的资源。
    故障排除步骤:
    • 首先检查 URL 中的错误,如果 URL 有效,然后访问主页并查找显示登录或安全访问的链接。输入您的凭据,然后重试,或者如果您没有有效的凭据或忘记密码,请按照说明创建新帐户或重置密码。
    • 清除浏览器缓存可以解决此错误,因为您的浏览器本地可能存储了无效的登录信息,即中断登录过程。
    • 如果站点不需要授权,则此错误消息可能是错误的。因此,最好联系网站管理员。
  • 403 - Forbidden:通常发生在用户发出有效请求但服务器由于缺乏访问所请求资源的权限而拒绝服务时。
    客户端故障排除步骤:
    • 如果该网站正在为他人工作,请联系 ISP(互联网服务提供商)。
    • 为了获得许可,您必须与网站管理员联系以授予访问权限。
    • 如果用户不断收到此错误,请确保 www 数据包含访问文件/读取的适当权限。通常这意味着应该将文件的权限设置为读取。
    • 检查.htaccess 设置(.htaccess 文件控制资源的访问,具体到一定范围的IP 地址)。
    • 如果您的网站没有索引文件,也会发生这种情况。如果不是,那么您应该将您的主页重命名为 index.html / index。 PHP
  • 404 - 未找到:此错误代码表示用户可以与服务器通信,但服务器无法找到请求的资源/文件。
    故障排除步骤:
    • 如果 URL 包含任何错误,请再次检查该 URL。
    • 按 F5 键刷新您的网页。
    • 清除浏览器缓存。
    • 修改 DNS(域名系统)服务器。 (仅当整个站点给您一个 404 错误时才尝试)

5** 服务器错误:此类中的 HTTP 状态代码表明服务器知道它遇到了错误或无法执行请求。

  • 500 – Internal Server Error:这是最常见的服务器错误,通常被称为catch all code error 。此 HTTP 错误代码表明网站服务器出现问题,服务器无法检测到确切的问题。虽然这不是客户端的问题,但客户端可以尝试通过以下步骤解决它。
    客户端故障排除步骤:
    • 可能会有很高的网络流量。所以通过按F5键重新加载网页可以解决这个问题。
    • 清除您的网络浏览器的 cookie 和缓存。
    • 检查您网站的 .htaccess 文件。确保它正确构建。
    • 检查文件和文件夹是否有任何不正确的权限。
  • 502 - 网关错误:此 HTTP 错误代码表示服务器充当网关或代理服务器,无法从上游服务器或源服务器获得有效响应。由于 DNS 问题,可能会发生这种情况。
    故障排除步骤:
    • 按 F5 键重新加载 URL。
    • 通过关闭所有打开的浏览器窗口来启动新的浏览器会话。
    • 清除浏览器缓存。
    • 暂时禁用您的 CDN(内容交付网络)。
    • 重新启动您的网络设备。 (调制解调器、路由器等)
  • 503 – 服务不可用:此错误代码表示服务器负载过多或正在维护中,服务应该在某个时候可用。
    故障排除步骤:
    • 按 F5 键重新加载 URL。
    • 重新启动路由器、调制解调器和设备。
  • 504 - 网关超时:此错误表明服务器是网关或代理服务器,无法在允许的时间段内从后端服务器获得响应。
    故障排除步骤:
    • 尝试按 F5 键重新加载 URL。
    • 重新启动所有网络设备,例如:调制解调器、路由器等。
    • 检查浏览器或应用程序中的代理服务器设置并确保它们正确。
    • 更改 DNS 服务器。 (如果您网络中的所有设备都收到相同的错误)
    • 如果您仍然收到此错误消息代码,请联系网站管理员。
    • 如果您仍然收到此错误,请联系您的 ISP。