Nginx入门基础-网页状态码
什么是HTTP状态码?
当你的浏览器(客户端)向网站服务器请求一个网页、图片或其他资源时,服务器会返回一个包含三位数字代码的响应,这就是HTTP状态码。它告诉浏览器你的请求是成功了、失败了,还是需要进一步操作。
状态码的第一个数字定义了响应的类别,共有五类:
五大类状态码详解
1xx - 信息性状态码
表示请求已被接收,需要继续处理。
100 Continue:客户端应继续发送请求的剩余部分。
101 Switching Protocols:服务器应客户端要求,正在切换协议(例如,切换到WebSocket)。
日常体验:这些状态码在浏览器后台处理,用户通常看不到。
2xx - 成功状态码
表示请求已成功被服务器接收、理解并接受。
200 OK:最常见的成功状态码。请求成功,服务器返回了所请求的数据(如网页、图片等)。
201 Created:请求成功,并且服务器创建了新的资源(常见于POST或PUT请求后)。
204 No Content:请求成功,但服务器没有返回任何内容(常见于DELETE请求或不需要返回数据的AJAX调用)。
日常体验:当你正常浏览网页时,几乎每一次成功的页面加载背后都是200状态码。
3xx - 重定向状态码
表示需要客户端采取进一步的操作才能完成请求。通常用于URL重定向。
301 Moved Permanently:永久重定向。所请求的资源已永久移动到新位置。未来所有请求都应使用新的URL。对SEO非常重要。
302 Found:临时重定向。所请求的资源临时从不同的URL响应。未来请求仍应使用原始URL。
304 Not Modified:未修改。用于缓存。告诉客户端,自上次请求以来,所请求的资源没有被修改,可以直接使用本地缓存副本。
日常体验:当你点击一个旧链接,自动跳转到了一个新网址,这通常就是301或302重定向。
4xx - 客户端错误状态码
表示客户端(如浏览器)可能出现了错误,服务器无法处理请求。
400 Bad Request:错误的请求。服务器因客户端的错误(如语法错误)无法理解该请求。
401 Unauthorized:未认证。请求需要用户验证(如登录)。
403 Forbidden:禁止访问。服务器理解请求,但拒绝执行。通常是因为权限不足(如尝试访问服务器上的敏感文件)。
404 Not Found:最著名的错误代码。服务器找不到请求的资源。可能原因是URL拼写错误、链接失效或资源已被删除。
418 I'm a teapot:我是一个茶壶。这是一个愚人节玩笑代码,并非正式标准,但被许多服务器幽默地使用。
429 Too Many Requests:请求过多。用户在给定的时间内发送了太多请求(“限速”)。
日常体验:你肯定见过“404 Not Found”页面。登录失败可能会遇到401,权限不足会看到403。
5xx - 服务器错误状态码
表示服务器在处理请求时发生了错误。责任在服务器端。
500 Internal Server Error:通用服务器错误。服务器遇到了一个未曾预料的状况,导致了它无法完成对请求的处理。
502 Bad Gateway:错误的网关。作为网关或代理的服务器,从上游服务器收到了一个无效的响应。
503 Service Unavailable:服务不可用。服务器当前无法处理请求(由于超载或停机维护)。这通常是临时状态。
504 Gateway Timeout:网关超时。作为网关或代理的服务器,未能及时从上游服务器收到响应。
日常体验:当网站流量过大、服务器崩溃或维护时,你通常会遇到502、503或504错误。
常见状态码速查表
状态码 类别 含义 常见场景
200 成功 请求成功 正常浏览网页
301 重定向 永久移动 网站更换域名,旧链接跳转到新链接
302 重定向 临时移动 临时活动页面跳转
304 重定向 未修改 使用浏览器缓存,加快加载速度
400 客户端错误 错误请求 请求数据格式错误
401 客户端错误 未认证 需要登录才能访问
403 客户端错误 禁止访问 无权访问该文件或目录
404 客户端错误 未找到 链接失效或页面不存在
429 客户端错误 请求过多 频繁刷新页面或API调用超限
500 服务器错误 内部服务器错误 服务器端程序bug
502 服务器错误 错误网关 后端服务无响应
503 服务器错误 服务不可用 服务器维护或过载
504 服务器错误 网关超时 后端服务响应超时如何查看状态码?
浏览器开发者工具:
按 F12 键打开开发者工具。
切换到 “Network”(网络) 标签页。
刷新页面,你会看到所有加载的资源列表。
“Status”(状态) 列显示的就是每个请求的HTTP状态码。
在线工具:
使用在线的“HTTP状态码检查”工具,输入URL即可查看。
