nginx php-fpm常见错误码-执行超时
499 client has closed connection 客户端超时nginx
客户端设置超时时间,引起超时,即主动放弃链接,此时nginx返回499
通常浏览器超时时间较长,引起此种原因多见于curl操作设置的超时时间
相关配置
#nginx.conf
#是否忽略客户端拒绝
proxy_ignore_client_abort on;
500 服务器内部错误
1,php代码存在语法错误
此时在php错误日志中可以找到对应错误
2,php代码抛出异常没有捕获
502 Bad Gateway 网关错误
1,nginx连接不到上游服务(php-fpm)
如:php-fpm没有启动端口配置不一致
2,代码执行时间超过php配置超时时间
php执行时间小于代码真实执行时间
#php.ini
max_execution_time 30s;
#php-fpm.ini
request_terminate_timeout 30;
504 Gateway Timeout 网关超时
504是指在上游(php-fpm)未执行完成的某一时刻,由于超过了nginx自身的超时时间,nginx从上游(php-fpm)无法按时从上游获取数据,就会返回504 此时上游服(php-fpm)还会继续执行
1,nginx配置超时时间超过上游执行时间
nginx.conf配置时间小于代码执行时间
#nginx.conf
fastcgi_read_timeout 10;
总结
499 专属nginx错误码,因客户端设置超时时间,超时引起,即客户端主动关闭连接时,nginx产生499错误码
500 语法错误等,即从源头主动通知的错误,此时nginx产生500错误
502 通常是上游服务器设置超时时间,超时引起,即无法按时完成,则返回给nginx,此时nginx产生502错误
504 通常是nginx设置超时时间,超时引起,无法等待上游的结果,此时nginx产生504错误
499,502,504都会因为超时而产生,区别是超时,谁超了谁的时,499是nginx响应时间超了客户端本身的连接时间,502是CGI的执行时间超了fpm限制时间,504 nginx超了自身的最大允许读取时间。
参考:
https://www.cnblogs.com/kerwing/p/9072268.html
https://www.jianshu.com/p/7f65a1f53d2c
最后更新于 2020-06-23 10:38:01 并被添加「」标签,已有 4093 位童鞋阅读过。
本站使用「署名 4.0 国际」创作共享协议,可自由转载、引用,但需署名作者且注明文章出处