HTTP 返回码

HTTP 返回码

  • 1XX 指示信息
  • 2XX 成功
  • 3XX 重定向
    • 301 Moved Permanently
    • 302 Found
    • 304 Not Modified
  • 4XX 客户端错误
    • 400 Bad Request
    • 401 Unauthorized
    • 403 Forbidden
    • 404 Not Found
    • 405 Method Not Allowed
    • 411 Length Requied
    • 413 Request Entity Too Large
    • 414 Request Uri Too Long
  • 5XX 服务端错误
    • 500 Internal Sever Error
      • 可能原因
      • 解决方案
    • 502 Bad Gateway
      • 可能原因
      • 解决方案
    • 503 Service Unavailable
      • 可能原因
      • 解决方案
    • 504 Gateway Timeout
      • 可能原因
      • 解决方案
        • nginx
        • php
  • 参考

1XX 指示信息

2XX 成功

3XX 重定向

301 Moved Permanently

(永久移动) 请求的网页已永久移动到新位置。 服务器返回此响应(对 GET 或 HEAD 请求的响应)时,会自动将请求者转到新位置。

302 Found

(临时移动) 服务器目前从不同位置的网页响应请求,但请求者应继续使用原有位置来进行以后的请求。

304 Not Modified

未修改,客户端使用缓存。

4XX 客户端错误

400 Bad Request

客户端错误请求。

401 Unauthorized

未授权。

403 Forbidden

禁止,没有权限。

404 Not Found

未找到。

405 Method Not Allowed

不允许使用的方法。

411 Length Requied

要求包含 content-length。

413 Request Entity Too Large

请求实体太大。

414 Request Uri Too Long

请求 URI 太长。

5XX 服务端错误

500 Internal Sever Error

服务器端在执行请求时发生了错误,服务器内部错误。

可能原因

  • 编程语言语法错误或者脚本错误。
  • 高并发时,系统资源受限,too many open files。

解决方案

  • 查看Nginx,PHP错误日志,进行修复
  • 修改单进程文件句柄数量和操作系统文件句柄数量的限制,也就是ulimit和file-max。
    HTTP 返回码_第1张图片

502 Bad Gateway

网关错误,服务器作为网关或代理,从上游服务器收到无效响应,有时是为了防止发生系统过载。

可能原因

  • 后端服务错误
  • 服务进程不够
  • 服务执行过长

解决方案

  • 优化服务配置
  • 优化服务逻辑

503 Service Unavailable

服务器目前无法为请求提供服务,但过一段时间就可以恢复服务。

可能原因

用户请求数(并发)过大。

解决方案

增加并发处理能力,优化后端服务,优化服务器。

504 Gateway Timeout

网关超时,服务器作为网关或代理,在等待另一台服务器的响应时出现了超时。

可能原因

通常是 nginx 将请求代理到后端应用时,后端应用没有在规定的时间返回数据,需要开发检查下应用那块有什么耗时的操作。

解决方案

检查后端耗时逻辑,进行优化。

nginx
# 调整到100s
proxy_connect_timeout    100;  #nginx跟后端服务器连接超时时间(代理连接超时)默认60s
proxy_read_timeout       100; #后端服务器数据回传时间(代理发送超时)默认值60s
proxy_send_timeout       100;  #连接成功后,后端服务器响应时间(代理接收超时)默认值60s
php
fastcgi_connect_timeout 1800s;#nginx跟后端服务器连接超时时间(代理连接超时)默认60s
fastcgi_send_timeout 1800s;#后端服务器数据回传时间(代理发送超时)默认值60s
fastcgi_read_timeout 1800s;#连接成功后,后端服务器响应时间(代理接收超时)默认值60s

参考

服务器错误码
ulimit 限制

你可能感兴趣的:(开发基础,http)