文档章节

nginx常见问题

Linland
 Linland
发布于 2015/01/29 17:47
字数 387
阅读 7271
收藏 16

1.错误日志:warn:an upstream response is buffered to a temporary file    

解决办法:增加fastcgi_buffers      8 4K;     fastcgi_buffer_size  4K;
2. a client request body is buffered to a temporary file

解决办法:增加client_max_body_size 2050m;     client_body_buffer_size 1024k;

Nginx 的 buffer 机制:

对于来自 FastCGI Server 的 Response,Nginx 将其缓冲到内存中,然后依次发送到客户端浏览器。缓冲区的大小由 fastcgi_buffers 和 fastcgi_buffer_size 两个值控制。

比如如下配置:

fastcgi_buffers      8 4K;
fastcgi_buffer_size  4K;

fastcgi_buffers 控制 nginx 最多创建 8 个大小为 4K 的缓冲区,而 fastcgi_buffer_size 则是处理 Response 时第一个缓冲区的大小,不包含在前者中。所以总计能创建的最大内存缓冲区大小是 8*4K+4K = 36k。而这些缓冲区是根据实际的 Response 大小动态生成的,并不是一次性创建的。比如一个 8K 的页面,Nginx 会创建 2*4K 共 2 个 buffers。

当 Response 小于等于 36k 时,所有数据当然全部在内存中处理。如果 Response 大于 36k 呢?fastcgi_temp 的作用就在于此。多出来的数据会被临时写入到文件中,放在这个目录下面。同时你会在 error.log 中看到一条类似 warning:

2010/03/13 03:42:22 [warn] 3994#0: *1 an upstream response is buffered to a temporary file
/usr/local/nginx/fastcgi_temp/1/00/0000000001 while reading upstream, 
client: 192.168.1.111,
server: www.xxx.cn,
request: "POST /test.php HTTP/1.1",
upstream: "fastcgi://127.0.0.1:9000", 
host: "xxx.cn",
referrer: "http://xxx.cn/test.php"

显然,缓冲区设置的太小的话,Nginx 会频繁读写硬盘,对性能有很大的影响,但也不是越大越好,没意义.


© 著作权归作者所有

上一篇: Linux安装pecl和pear
下一篇: nginx配置文件
Linland
粉丝 31
博文 51
码字总数 15762
作品 0
西安
数据库管理员
私信 提问
加载中

评论(1)

Winters_huang2
Winters_huang2
good
linux下nginx常用命令

一、基本指令 首先进入目录 #cd /usr/local/nginx/sbin/ 启动nginx #./nginx 停止nginx ./nginx -s stop 重新启动 ./nginx -s reload 二、更改配置文件 # cd /usr/local/nginx/conf # vim n......

嘴角轻扬30
05/18
3
0
【PDF分享】Nginx 常见应用技术指南[Nginx Tips] 第二版.pdf

文档目录: 一、Nginx 基础知识 二、Nginx 安装及调试 三、Nginx Rewrite 四、Nginx Redirect 五、Nginx 目录自动加斜线: 六、Nginx Location 七、Nginx expires 八、Nginx 防盗链 九、Nginx...

鉴客
2010/09/12
1K
4
nginx(一)安装与命令总结

nginx(一)安装与命令总结 不同平台上安装nginx 1.mac 安装在命令行中输入以下命令, 前提安装好brew 2.Linux centos安装linux 先需要安装源: 启动nginx 常用命令总结: 常见问题解决方案 1....

陈小扁
2016/07/19
328
0
本人新书推荐《linux运维之道》

历时一年,本人新作终于可以与大家见面了,希望可以为技术的发展与推广尽一份贡献。 亚马逊: http://www.amazon.cn/Linux%E8%BF%90%E7%BB%B4%E4%B9%8B%E9%81%93-%E4%B8%81%E6%98%8E%E4%B8%...

丁丁历险
2013/12/22
0
0
Linux系统下Nginx服务器部署

Nginx安装步骤: 一、相关组件 (1) Nginx本身 下载地址:http://nginx.org/en/download.html;提供的安装包是Nginx-1.9.7版本。 (2) Rewrite模块的正则表达式依赖库pcre 下载地址:http:...

牛牛牛大棚
2016/02/04
28
0

没有更多内容

加载失败,请刷新页面

加载更多

PostgreSQL参数search_path影响及作用

search_path稍微熟悉PG就会用到,用法这里就不必讲,本篇主要讲它在程序里怎样处理。 1、GUC参数定义 这是个 config_string 参数 {{"search_path", PGC_USERSET, CLIENT_CONN_STATEMENT,...

有理想的猪
今天
8
0
Qt程序各个平台打包发布及安装程序大全

本文链接:https://blog.csdn.net/zhengtianzuo06/article/details/78468111 通用: 1.准备图标 图标可以直接使用一般格式的图片制作, 比如jpg, png等 推荐使用Photoshop制作原始图 推荐使用I...

shzwork
今天
4
0
springboot2.0 maven打包分离lib,resources

springboot将工程打包成jar包后,会出现获取classpath下的文件出现测试环境正常而生产环境文件找不到的问题,这是因为 1、在调试过程中,文件是真实存在于磁盘的某个目录。此时通过获取文件路...

陈俊凯
今天
22
0
BootStrap

一、BootStrap 简洁、直观、强悍的前端开发框架,让web开发更加迅速、简单 中文镜像网站:http://www.bootcss.com 用于开发响应式布局、移动设备优先的WEB项目 1、使用boot 创建文件夹,在文...

wytao1995
今天
10
0
小知识:讲述Linux命令别名与资源文件的区别

别名 别名是命令的快捷方式。为那些需要经常执行,但需要很长时间输入的长命令创建快捷方式很有用。语法是: alias ppp='ping www.baidu.com' 它们并不总是用来缩短长命令。重要的是,你将它...

老孟的Linux私房菜
今天
18
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部