常见问题与错误处理
1、 400 bad request 错误的原因和解决办法
配置 nginx.conf 相关设置如下.
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;
——————————————————————————————————————————————
期待您的加入我们!一起建立最好的技术分享社区! Gmail:cnseek@gmail.com/MSN:cnseek@msn.com
IT 运维专家网 【 推广 Nginx 之基础应用教程】 http://www.linuxtone.org
3、 Nginx 出现的 413 Request Entity Too Large 错误
这个错误一般在上传文件的时候会出现,
编辑 Nginx 主配置文件 Nginx.conf,找到 http{}段,添加
client_max_body_size 10m; //设置多大根据自己的需求作调整.
如果运行 php 的话这个大小 client_max_body_size 要和 php.ini 中的如下值的最大值
一致或者稍大,这样就不会因为提交数据大小不一致出现的错误。
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 的资料不是很多, 很多事情都需要长期的经验
累计才有结果, 期待您的发现哈!