Nginx
四、常见错误处理
## 1、 400 bad request错误的原因和解决办法 配置nginx.conf相关设置如下. ```shell client_header_buffer_size 16k; large_client_header_buffers 4 64k; ``` 根据具体情况调整,一般适当调整值就可以。 ## 2、 Nginx 502 Bad Gateway错误 proxy_next_upstream error timeout invalid_header http_500 http_503; 或者尝试设置:large_client_header_buffers 4 32k; ## 3、 Nginx出现的413 Request Entity Too Large错误 这个错误一般在上传文件的时候会出现,编辑Nginx主配置文件Nginx.conf,找到http{}段,添加client_max_body_size 10m; //设置多大根据自己的需求作调整.如果运行php的话这个大小client_max_body_size要和php.ini中的如下值的最大值一致或者稍大,这样就不会因为提交数据大小不一致出现的错误。 ```shell post_max_size = 10M upload_max_filesize = 2M ``` ## 4、 解决504 Gateway Time-out(nginx) 遇到这个问题是在升级discuz论坛的时候遇到的一般看来, 这种情况可能是由于nginx默认的fastcgi进程响应的缓冲区太小造成的,这将导致fastcgi进程被挂起, 如果你的fastcgi服务对这个挂起处理的不好, 那么最后就 极有可能导致504 Gateway Time-out现在的网站, 尤其某些论坛有大量的回复和很多内容的, 一个页面甚至有几百K。 默认的fastcgi进程响应的缓冲区是8K, 我们可以设置大点在nginx.conf里, 加入:fastcgi_buffers 8 128k 这表示设置fastcgi缓冲区为8×128k,当然如果您在进行某一项即时的操作, 可能需要nginx的超时参数调大点,例如设置成60秒:send_timeout 60; 只是调整了这两个参数, 结果就是没有再显示那个超时, 可以说效果不错, 但是也可能是由于其他的原因, 目前关于nginx的资料不是很多, 很多事情都需要长期的经验累计才有结果, 期待您的发现哈! ## 5、500错误码 - 500错误指的是服务器内部错误,也就是服务器遇到意外情况,而无法履行请求。 - 500错误一般有几种情况: 1)web脚本错误,如php语法错误,lua语法错误等。 2)访问量大的时候,由于系统资源限制,而不能打开过多的文件 3)硬盘空间满了 4)nginx配置文件错误 5)并发数太多 - 解决思路 1)查看nginx error log ,查看php error log 2)如果是脚本的问题,则需要修复脚本错误,并优化代码 3)如果是too many open files,修改nginx的worker_rlimit_nofile参数,使用ulimit查看系统打开文件限制,修改/etc/security/limits.conf 4)如果硬盘空间满了,使用 df -k 查看硬盘空间是否满了。清理硬盘空间就可以解决500错误。nginx如果开启了access log,在不需要的情况下,最好关闭access log。access log会占用大量硬盘空间 5)nginx配置文件错误。这里不是指语法错误,nginx如果配置文件有语法错误,启动的时候就会提示。当配置rewrite的时候,有些规则处理不当会出现500错误,请仔细检查自己的rewrite规则。如果配置文件里有些变量设置不当,也会出现500错误,比如引用了一个没有值的变量。 6)如果上面的问题都不存在可能是模拟的并发数太多了,需要调整一下nginx.conf的并发设置数: 1 打开/etc/security/limits.conf文件,加上两句 * soft nofile 65535 * hard nofile 65535 2 打开/etc/nginx/nginx.conf 在worker_processes的下面增加一行 worker_rlimit_nofile 65535; - 常见500错误码 - 500(服务器内部错误):服务器遇到错误,无法完成请求。 - 501(尚未实施):服务器不具备完成请求的功能。例如,当服务器无法识别请求方法时,服务器可能会返回此代码。 - 502(错误网关):服务器作为网关或代理,从上游服务器收到了无效的响应。 - 503(服务不可用):目前无法使用服务器(由于超载或进行停机维护)。通常,这只是一种暂时的状态。 - 504(网关超时):服务器作为网关或代理,未及时从上游服务器接收请求。 - 505(HTTP 版本不受支持):服务器不支持请求中所使用的 HTTP 协议版本。
顶部
收展
底部
[TOC]
目录
一、 Nginx 基础知识
二、 Nginx 安装及调试
三、nginx php-fpm安装配置
四、常见错误处理
五、Nginx监控
六、Nginx 负载均衡
七、nginx反向代理配置
八、Nginx Rewrite
九、Nginx安全
十、nginx基本配置与参数说明
十一、Nginx Redirect、Location
十二、nginx 高并发配置参数
十三、Nginx 参数优化
十四、Nginx 虚拟主机配置例子
相关推荐
Apache