HTTP请求错误大全总结

HTTP请求错误大全
HTTP请求错误大全 

1xx - 信息提示

这些状态代码表示临时的响应。客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应。
100 - 继续
101 - 切换协议

2xx - 成功
这类状态代码表明服务器成功地接受了客户端请求。
200 - 确定。客户端请求已成功
201 - 已创建
202 - 已接受
203 - 非权威性信息
204 - 无内容
205 - 重置内容
206 - 部分内容

3xx - 重定向
客户端浏览器必须采取更多操作来实现请求。例如,浏览器可能不得不请求服务器上的不同的页面,或通过代理服务器重复该请求。 
302 - 对象已移动。 
304 - 未修改。 
307 - 临时重定向。

4xx - 客户端错误

发生错误,客户端似乎有问题。例如,客户端请求不存在的页面,客户端未提供有效的身份验证信息。
400 - 错误的请求
401 - 访问被拒绝
 · 401.1 - 登录失败。 
 · 401.2 - 服务器配置导致登录失败。 
 · 401.3 - 由于 ACL 对资源的限制而未获得授权。 
 · 401.4 - 筛选器授权失败。
 · 401.5 - ISAPI/CGI 应用程序授权失败。 
 · 401.7 – 访问被 Web 服务器上的 URL 授权策略拒绝。这个错误代码为 IIS 6.0 所专用。 
403 - 禁止访问
 · 403.1 - 执行访问被禁止。 
 · 403.2 - 读访问被禁止。 
 · 403.3 - 写访问被禁止。 
 · 403.4 - 要求 SSL。 
 · 403.5 - 要求 SSL 128。 
 · 403.6 - IP 地址被拒绝。 
 · 403.7 - 要求客户端证书。 
 · 403.8 - 站点访问被拒绝。 
 · 403.9 - 用户数过多。 
 · 403.10 - 配置无效。 
 · 403.11 - 密码更改。 
 · 403.12 - 拒绝访问映射表。 
 · 403.13 - 客户端证书被吊销。 
 · 403.14 - 拒绝目录列表。 
 · 403.15 - 超出客户端访问许可。 
 · 403.16 - 客户端证书不受信任或无效。 
 · 403.17 - 客户端证书已过期或尚未生效。 
 · 403.18 - 在当前的应用程序池中不能执行所请求的 URL。这个错误代码为 IIS 6.0 所专用。 
 · 403.19 - 不能为这个应用程序池中的客户端执行 CGI。这个错误代码为 IIS 6.0 所专用。 
 · 403.20 - Passport 登录失败。这个错误代码为 IIS 6.0 所专用。
404 - 没有找到文件或目录
 · 404.1 - 无法在所请求的端口上访问 Web 站点。 
 · 404.2 - Web 服务扩展锁定策略阻止本请求。 
 · 404.3 - MIME 映射策略阻止本请求。
405 - 用来访问本页面的 HTTP 谓词不被允许(方法不被允许) 
406 - 客户端浏览器不接受所请求页面的 MIME 类型
407 - 要求进行代理身份验证
412 - 前提条件失败
413 – 请求实体太大
414 - 请求 URI 太长
415 – 不支持的媒体类型
416 – 所请求的范围无法满足
417 – 执行失败
423 – 锁定的错误

5xx - 服务器端错误
服务器由于遇到错误而不能完成该请求。
500 - 内部服务器错误
 · 500.12 - 应用程序正忙于在 Web 服务器上重新启动。 
 · 500.13 - Web 服务器太忙。 
 · 500.15 - 不允许直接请求 Global.asa。 
 · 500.16 – UNC 授权凭据不正确。这个错误代码为 IIS 6.0 所专用。 
 · 500.18 – URL 授权存储不能打开。这个错误代码为 IIS 6.0 所专用。 
 · 500.100 - 内部 ASP 错误。 
501 - 页眉值指定了未实现的配置
502 - Web 服务器用作网关或代理服务器时收到了无效响应。502.1 - CGI 应用程序超时
502.2 - CGI 应用程序出错。application
503 - 服务不可用。这个错误代码为 IIS 6.0 所专用
504 - 网关超时
505 - HTTP 版本不受支持


### ### HTTP请求与响应信息总结 HTTP(HyperText Transfer Protocol)是一种用于客户端与服务器之间传输超文本的应用层协议。HTTP 协议基于请求-响应模型,客户端发送 HTTP 请求,服务器返回 HTTP 响应。以下是关于 HTTP 请求与响应的全面总结。 #### ### HTTP请求结构 HTTP 请求请求行、请求头、空行和请求体四部分组成: - **请求行**:包含请求方法、请求 URI 和 HTTP 版本。例如 `GET /index.html HTTP/1.1`。 - **请求头**:包含客户端向服务器传递的元数据,如 `Host`、`User-Agent`、`Accept`、`Content-Type` 等。 - **空行**:表示请求头的结束。 - **请求体**:仅在某些请求方法(如 POST 或 PUT)中存在,用于传输客户端发送给服务器的数据[^2]。 示例 HTTP 请求: ```http GET /index.html HTTP/1.1 Host: www.example.com User-Agent: Mozilla/5.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: en-us,en;q=0.5 Accept-Encoding: gzip, deflate Connection: keep-alive ``` #### ### HTTP响应结构 HTTP 响应由状态行、响应头、空行和响应体四部分组成: - **状态行**:包含 HTTP 版本、状态码和状态消息。例如 `HTTP/1.1 200 OK`。 - **响应头**:提供服务器响应的元数据,如 `Date`、`Server`、`Content-Type`、`Content-Length` 等。 - **空行**:表示响应头的结束。 - **响应体**:包含服务器返回给客户端的实际数据,如 HTML、JSON、图片等[^2]。 示例 HTTP 响应: ```http HTTP/1.1 200 OK Date: Mon, 27 Jul 2020 12:28:53 GMT Server: Apache/2.2.14 (Win32) Last-Modified: Wed, 22 Jul 2020 19:15:56 GMT ETag: "34aa387-d-1568eb00" Accept-Ranges: bytes Content-Length: 88 Vary: Accept-Encoding Content-Type: text/html <html> <body> <h1>Hello, World!</h1> </body> </html> ``` #### ### HTTP请求方法 常见的 HTTP 请求方法包括: - **GET**:用于获取指定资源,数据通过 URL 传递。 - **POST**:用于向服务器提交数据,数据在请求体中。 - **PUT**:用于更新指定资源的内容。 - **DELETE**:用于删除指定资源。 - **HEAD**:类似于 GET,但不返回响应体,仅返回响应头。 - **OPTIONS**:用于查询服务器支持的请求方法[^1]。 #### ### HTTP状态码 HTTP 状态码是三位数字,用于表示请求的处理结果,主要分为五类: - **1xx(信息性状态码)**:表示请求正在处理中。 - **2xx(成功状态码)**:表示请求已成功处理。 - **3xx(重定向状态码)**:表示需要进一步操作,如重定向。 - **4xx(客户端错误状态码)**:表示客户端发送的请求有误。 - **5xx(服务器错误状态码)**:表示服务器处理请求时发生错误[^1]。 常见状态码包括: - **200 OK**:请求成功。 - **301 Moved Permanently**:资源永久移动。 - **400 Bad Request**:客户端请求有误。 - **404 Not Found**:请求的资源不存在。 - **500 Internal Server Error**:服务器内部错误。 #### ### HTTP请求头和响应头 HTTP 请求头和响应头用于传递客户端和服务器之间的附加信息。 常见请求头包括: - **Host**:指定请求的目标主机。 - **User-Agent**:标识客户端的浏览器和操作系统信息。 - **Accept**:指定客户端可以接受的响应内容类型。 - **Content-Type**:指定请求体的媒体类型。 - **Content-Length**:指定请求体的长度。 - **Connection**:控制是否保持 TCP 连接(如 `keep-alive`)[^2]。 常见响应头包括: - **Content-Type**:指定响应体的媒体类型。 - **Content-Length**:指定响应体的长度。 - **Set-Cookie**:用于设置客户端的 Cookie。 - **Location**:用于重定向时指定新的 URL。 - **Cache-Control**:控制缓存行为[^1]。 #### ### HTTP版本 HTTP 有多个版本,主要包括: - **HTTP/1.0**:每次请求后断开连接,效率较低。 - **HTTP/1.1**:默认使用持久连接(keep-alive),提高了性能。 - **HTTP/2**:引入二进制分帧、多路复用、头部压缩等特性,显著提升性能。 - **HTTP/3**:基于 QUIC 协议,进一步减少延迟并提高安全性。 #### ### URI与资源 URI(Uniform Resource Identifier)用于标识服务器上的资源。HTTP 请求通过 URI 定位资源,并通过请求方法指定对资源的操作。例如,`GET /images/logo.png` 表示请求获取 `logo.png` 图片资源。服务器通过 `Content-Type` 响应头告知客户端响应内容的类型,如 `text/html` 或 `image/png`。 #### ### 无状态特性 HTTP 是一种无状态协议,即服务器不会保存客户端的请求状态。每次请求都是独立的,服务器不保留任何上下文信息。为了维持会话状态,通常使用 Cookie、Session 或 Token 等机制来实现状态管理[^1]。 #### ### GET与POST的区别 - **GET**:用于获取资源,数据通过 URL 传递(查询参数),请求可以被缓存和书签保存。 - **POST**:用于提交数据,数据在请求体中,适合传输敏感或大量数据,请求不会被缓存或书签保存[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值