nginx报网络连接错误(Nginx 502 Bad Gateway错误原因及解决方案)
nginx报网络连接错误
Nginx 502 Bad Gateway错误原因及解决方案Nginx 502 Bad Gateway 的错误已经遇到好几次了,这里做一下记录,备忘哈哈。
会有好多种情况出现502错误,下面我们分情况来说一下。
一、fastcgi缓冲区设置过小
出现错误,首先要查找nginx的日志文件,目录为/var/log/nginx,在日志中发现了如下错误。
2013/01/17 13:33:47 [error] 15421#0: *16 upstream sent too big header while reading response header from upstream
查阅了一下资料,大意是nginx缓冲区有一个bug造成的,我们网站的页面消耗占用缓冲区可能过大。
网上查找了一下解决方法,在国外网站看到了一个增加缓冲区的方法,彻底解决了Nginx 502 Bad Gateway的问题。方法如下:
http { ... fastcgi_buffers 8 16k; fastcgi_buffer_size 32k; ... }
请根据服务器已经网站的情况自行增大上述两个配置项。
二、代理缓冲区设置过小
如果你使用的是nginx反向代理,如果header过大,超出了默认的1k,就会引发上述的upstream sent too big header (说白了就是nginx把外部请求给后端处理,后端返回的header太大,nginx处理不过来就会导致502。
server { listen 80; server_name *.lxy.me; location / { ###############添加这3行 proxy_buffer_size 64k; proxy_buffers 32 32k; proxy_busy_buffers_size 128k; ###############添加这3行 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; ............ }
三、默认php-cgi的进程数设置过少
在安装好使用过程中出现502问题,一般是因为默认php-cgi进程是5个,可能因为phpcgi进程不够用而造成502,需要修改/usr/local/php/etc/php-fpm.conf 将其中的max_children值适当增加。也有可能是max_requests值不够用。需要说明的是这连个配置项占用内存很大,请根据服务器配置进行设置。否则可能起到反效果。
四、php执行超时
php执行超时,修改/usr/local/php/etc/php.ini 将max_execution_time 改为300
五、nginx等待时间超时
部分PHP程序的执行时间超过了Nginx的等待时间,可以适当增加nginx.conf配置文件中FastCGI的timeout时间
http { fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; ..... }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持开心学习网。
- nginx 反向代理的参数(Nginx反向代理及负载均衡如何实现基于linux)
- nginx宝塔配置(宝塔面板安装云锁Nginx自编译web防护教程绝对有效)
- linux系统查看nginx系统版本(Linux中Nginx的防盗链和优化的实现代码)
- nginx+ssl配置详解(nginx配置ssl实现https的方法示例)
- 宝塔web服务器如何安装(宝塔面板开启Nginx/Apache防火墙四层防御的方法)
- nginxlocation和alias的区别(nginx搭建图片服务器的过程详解root和alias的区别)
- docker重新加载nginx(Docker Nginx Log 三者的处理详解)
- 如何设置nginx使用ip访问(nginx基于域名,端口,不同IP的虚拟主机设置的实现)
- nginxlocation匹配参数(nginx location优先级的深入讲解)
- 安装了nginx怎么启动(windows下快速安装nginx并配置开机自启动的方法)
- nginx反向代理怎样实现(Nginx反向代理配置的全过程记录)
- nginx反向代理流程详解(本地通过nginx配置反向代理的全过程记录)
- windows下nginx负载均衡配置(使用nginx配置访问wgcloud的方法)
- 服务器启动nginx服务的命令(Nginx服务器添加Systemd自定义服务过程解析)
- dockernginx怎么设置容器(docker nginx + https 子域名配置详细教程)
- nginx如何配置php项目(Nginx服务器究竟是怎么执行PHP项目)
- 26岁杨紫的白素贞遇上24岁鞠婧祎,哪个最美(26岁杨紫的白素贞遇上24岁鞠婧祎)
- 鞠婧祎和杨紫两种风格的女生,你心里谁比较美(鞠婧祎和杨紫两种风格的女生)
- 三千年第一美女鞠婧祎出演白素贞pk杨紫,颜值胜赵雅芝王祖贤(三千年第一美女鞠婧祎出演白素贞pk杨紫)
- 成都轨道交通13号线一期工程最新进展(成都轨道交通13号线一期工程最新进展)
- 越南没事(越南没事情做)
- 重庆旅游攻略(重庆旅游3-4天攻略最佳线路)
热门推荐
- 异步调用中HttpContext.Current为null解决方法
- ASP.NET记录错误日志的方式有哪些
- 怎么在当前目录调用python库(Python父目录、子目录的相互调用方法)
- css中outline
- centos7离线安装mysql5.7(CentOS7.5 安装MySql的教程)
- python注册码实现(python实现Virginia无密钥解密)
- jquery 选择器的用法
- tomcat怎么知道访问servlet(详解从源码分析tomcat如何调用Servlet的初始化)
- react和antd项目教程(React引入antd-mobile+postcss搭建移动端)
- css中的浮动和定位是啥(CSS的position定位和float浮动详解)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9