当前位置: 首页 > news >正文

HTTP状态码_五类

HTTP状态码是用于表示网页服务器HTTP响应状态的3位数字代码。它们分为五类:

  1. 1xx(信息类): 这些状态码表示接收到请求并继续处理。

    • 100 Continue: 客户端应继续发送请求。这用于在客户端发送大请求体之前,先发送请求头,接收服务器确认后再发送请求体。
    • 101 Switching Protocols: 服务器根据客户端的请求切换协议。
  2. 2xx(成功类): 这类状态码表示请求被成功接收、理解和接受。

    • 200 OK: 请求成功。回应的主体部分包含请求的资源。
    • 201 Created: 请求被成功处理,并创建了新的资源,同时将新资源的URI发送给了客户。
    • 202 Accepted: 服务器已接受请求,但尚未处理完成。
  3. 3xx(重定向类): 完成请求必须进行更进一步的操作。

    • 301 Moved Permanently: 请求的网页已永久移动到新位置。
    • 302 Found: 临时性重定向。
    • 304 Not Modified: 自上次请求后,请求的网页未修改过。
  4. 4xx(客户端错误类): 这些状态码表示请求可能出错,妨碍了服务器的处理。

    • 400 Bad Request: 服务器不理解请求的语法。
    • 401 Unauthorized: 请求要求身份验证。
    • 403 Forbidden: 服务器拒绝请求。
    • 404 Not Found: 服务器找不到请求的网页。
    • 408 Request Timeout: 请求超时。
    • 499 Client Closed Request: 客户端在服务器尚未发送响应时关闭连接。
  5. 5xx(服务器错误类): 这些状态码表示服务器在尝试处理请求时发生内部错误。

    • 500 Internal Server Error: 服务器遇到错误,无法完成请求。
    • 502 Bad Gateway: 作为网关或代理工作的服务器从上游服务器收到无效响应。
    • 503 Service Unavailable: 服务器目前无法使用(由于超载或停机维护)。
    • 504 Gateway Timeout: 上游服务器超时。

Nginx特定错误码的详解与示例:

  • Nginx 408 Request Timeout:
    当客户端在服务器预设的超时时间内没有完成请求的发送时,Nginx 会返回 HTTP 408 错误。例如,如果客户端开始了一个连接但在60秒内没有发送任何数据,或者没有发送完整的请求头,服务器就会因为超时返回408状态码。

  • Nginx 499 Client Closed Request:
    当客户端在服务器发送HTTP响应之前关闭连接时,Nginx 会返回 HTTP 499 错误。这通常发生在服务器处理请求时间较长,客户端选择放弃等待并关闭连接的情况下。例如,如果一个客户端向服务器发起一个需要较长处理时间的请求(如大量数据处理或复杂查询),并在服务器完成处理前关闭了连接,服务器会记录一个499错误。这个状态码是Nginx特有的,不是标准的HTTP状态码。

使用 proxy_ignore_client_abort on; 指令可以控制当客户端中断连接时,是否继续与上游服务器保持连接。如果开启此设置,即使客户端关闭了连接,Nginx 仍会等待并记录上游服务器的响应。如果上游服务器响应正常,则记录正常的状态码;如果上游响应错误或超时,将记录相应的错误或504状态码。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • ComsolMatlab 螺旋孔多孔超材料高温吸声性能研究
  • 【微服务】Spring Cloud中如何使用Eureka
  • 在Visual Studio/Qt Creator 中使用CMake安装和使用vcpkg包
  • 全新在线客服系统源码(pc+h5+uniapp+公众号小程序+抖音)附搭建接入教程
  • 基于RK3568 Android11 移除长按电源按键弹窗的对话框中的 [关机] 和 [紧急呼救] 选项(详细分析)
  • Jenkins 部署Vue项目指引: Vue项目本地跨域代理 、解决ERR_UNSAFE_PORT
  • 轨迹优化 | 基于ESDF的共轭梯度优化算法(附ROS C++/Python仿真)
  • 驾驭企业数字化转型的利器:《TOGAF®标准第10版》
  • qt自定义控件遇到的找不到头文件的问题
  • CentOS的根目录下,/bin 和 /sbin 用途和权限
  • Go语言fmt包中print相关方法
  • Android实时通信:WebSocket与WebRTC的应用与优化
  • 智能合约中重放攻击
  • 【SpringMVC】详细了解SpringMVC中WEB-INF 目录资源,视图解析器和静态资源放行的使用。
  • 从0开始安装一个本地K8s环境
  • 【Leetcode】101. 对称二叉树
  • 分享一款快速APP功能测试工具
  • 2017 前端面试准备 - 收藏集 - 掘金
  • hadoop集群管理系统搭建规划说明
  • in typeof instanceof ===这些运算符有什么作用
  • leetcode388. Longest Absolute File Path
  • leetcode讲解--894. All Possible Full Binary Trees
  • 复习Javascript专题(四):js中的深浅拷贝
  • 机器学习 vs. 深度学习
  • 基于Android乐音识别(2)
  • 使用iElevator.js模拟segmentfault的文章标题导航
  • 线上 python http server profile 实践
  • 一个JAVA程序员成长之路分享
  • 7行Python代码的人脸识别
  • 如何用纯 CSS 创作一个货车 loader
  • ### RabbitMQ五种工作模式:
  • #Datawhale AI夏令营第4期#AIGC文生图方向复盘
  • #define 用法
  • $.proxy和$.extend
  • (Bean工厂的后处理器入门)学习Spring的第七天
  • (pycharm)安装python库函数Matplotlib步骤
  • (pytorch进阶之路)扩散概率模型
  • (TOJ2804)Even? Odd?
  • (八)五种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (动手学习深度学习)第13章 计算机视觉---微调
  • (翻译)Quartz官方教程——第一课:Quartz入门
  • (附源码)c#+winform实现远程开机(广域网可用)
  • (附源码)springboot助农电商系统 毕业设计 081919
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • (一)Spring Cloud 直击微服务作用、架构应用、hystrix降级
  • (转)德国人的记事本
  • ***详解账号泄露:全球约1亿用户已泄露
  • **《Linux/Unix系统编程手册》读书笔记24章**
  • .Net Framework 4.x 程序到底运行在哪个 CLR 版本之上
  • .Net Redis的秒杀Dome和异步执行
  • .NET 漏洞分析 | 某ERP系统存在SQL注入
  • .NET/C# 解压 Zip 文件时出现异常:System.IO.InvalidDataException: 找不到中央目录结尾记录。
  • .Net插件开发开源框架
  • .net中调用windows performance记录性能信息
  • @Autowired注解的实现原理