Nginx日志中的状态码是用来表示服务器对客户端请求的响应状态的。状态码由三位数字组成,可以分为五类:
- 1xx(信息性状态码):表示请求已接收,继续处理。
- 2xx(成功状态码):表示请求已成功处理。
- 3xx(重定向状态码):表示需要进一步操作以完成请求。
- 4xx(客户端错误状态码):表示服务器无法处理请求,原因是客户端错误。
- 5xx(服务器错误状态码):表示服务器在处理请求时发生错误。
以下是一些常见的Nginx状态码及其含义:
- 200 OK:请求成功,服务器已成功处理请求。
- 301 Moved Permanently:请求的资源已被永久移动到新位置,新的URL在响应头中的Location字段中给出。
- 302 Found(临时重定向):请求的资源临时从不同的URI响应请求,新的URL在响应头中的Location字段中给出。
- 400 Bad Request:客户端请求的语法错误,服务器无法理解。
- 401 Unauthorized:请求要求身份验证,客户端未提供有效的身份验证信息。
- 403 Forbidden:客户端没有权限访问请求的资源。
- 404 Not Found:服务器找不到请求的资源。
- 500 Internal Server Error:服务器内部错误,无法完成请求。
- 502 Bad Gateway:服务器作为网关或代理时,从上游服务器接收到无效响应。
- 503 Service Unavailable:服务器暂时无法处理请求(可能是由于过载或维护)。
- 504 Gateway Timeout:服务器作为网关或代理时,未及时从上游服务器接收到响应。
要解读Nginx日志中的状态码,你可以查看访问日志(通常位于/var/log/nginx/access.log)或错误日志(通常位于/var/log/nginx/error.log)。在访问日志中,状态码位于响应头的第9列。例如:
127.0.0.1 - - [21/Jul/2021:12:34:56 +0000] "GET /index.html HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"
在这个例子中,状态码是200,表示请求成功。