今天开启了nginx的error_log,发现了三个配置问题:

问题一:

2011/07/18 17:04:37 [warn] 2422#0: *171505004 an upstream response is buffered to a temporary file /opt/app/nginx/fastcgi_temp/9/80/0001539809 while reading upstream, client: 1.202.221.2, server: www.yongfu.com, request: "GET /recipe/all?cate=643&PHPSESSID=8c1135b85f1b5f90f55caab5ea7e1526 HTTP/1.0", upstream: "fastcgi://127.0.0.1:9000", host: "www.yongfu.com"
问题分析:nginx的fastcgi设置的fastcgi_buffers太小,导致将缓存写入磁盘。
问题解决:修改nginx的配置,将fastcgi_buffers调大,参考了该文:http://www.ruby-forum.com/topic/140625
fastcgi_buffers 32 8k;
ok,问题解决,但又出现新的问题:
 
问题二:
2011/07/18 17:10:21 [warn] 2898#0: *171505297 a client request body is buffered to a temporary file /opt/app/nginx/client_body_temp/0001539931, client: 114.237.110.152, server: www.yongfu.com, request: "POST /recipe/create/58884?do=uploadstep HTTP/1.1", host: "www.yongfu.com", referrer: "http://www.yongfu.com/recipe/create/58884"
问题分析:还是缓存写入磁盘的问题。
问题解决:修改nginx.conf的client_max_body_size & client_body_buffer_size选项。参考了:http://nginx.org/pipermail/nginx/2009-July/013634.html
client_max_body_size 500m;client_body_buffer_size 1024k;
 
问题三:
2011/07/18 16:43:39 [warn] 18326#0: *28601 using uninitialized "rule_1" variable, client: 192.168.1.6, server: yongfu.com, request: "GET /user/notice.php?callback=jsonp1310978365248&_=1310978696380 HTTP/1.1", host: "www.yongfu.com", referrer: "http://www.yongfu.com/act/cooking?m=creview"
问题分析:这个是因为我的rewrite规则里的变量rule_1的问题。
if (!-f $document_root$uri){  set $rule_1 "1"; } if ($rule_1 = "1"){  rewrite ^/.*$ /rewrite.php last; }
说是没有定义rule_1,但我在那里定义了呀,没明白。但分析这两个判断,可以使用以下代码代替:
问题解决:
if (!-f $document_root$uri){  rewrite ^/.*$ /rewrite.php last; }

(转) 三个nginx配置问题的解决方案的更多相关文章

  1. nginx 日志搜集解决方案

    # nginx 日志搜集解决方案 ## 系统环境描述 ``` java8 logstash --监控nginx日志文件 ``` ## 技术描述 ``` 通过logstash监控nginx access ...

  2. nginx跨域解决方案

    nginx跨域解决方案Access to Font at 'http://47.104.86.187/yinjiatoupiao2/iconfont/iconfont.woff' from origi ...

  3. 三、Nginx原理解析

    Nginx原理解析 一.反向代理 工作流程 用户通过域名发出访问Web服务器的请求,该域名被DNS服务器解析为反向代理服务器的IP地址: 反向代理服务器接受用户的请求: 反向代理服务器在本地缓存中查找 ...

  4. Nginx 笔记(三)nginx 配置实例 - 反向代理、负载均衡、动静分离

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一.反向代理 反向代理准备工作: (1)在 liunx 系统安装 tomcat,使用默认端口 8080 ...

  5. Nginx(三)--Nginx 的高可用

    1. Nginx 进程模型简介 多进程+多路复用 master 进程 . worker 进程  启动nginx,查看nginx的线程,可以发现: [root@localhost ~]# ps -ef ...

  6. Django搭建及源码分析(三)---+uWSGI+nginx

    每个框架或者应用都是为了解决某些问题才出现旦生的,没有一个事物是可以解决所有问题的.如果觉得某个框架或者应用使用很不方便,那么很有可能就是你没有将其使用到正确的地方,没有按开发者的设计初衷来使用它,当 ...

  7. 利用raspberry pi搭建typecho笔记(三) typecho nginx sqlite FAQ

    前言 这是一个汇总文,用来总结我在整个配置过程中遇到的各种问题.因为我在解决这些问题的过程中发现,typecho被部署在这种需要完全自己配置的平台上的情况是比较少的,相关的资料也比较少,所以我的解决过 ...

  8. Nginx之(三)Nginx配置

    一个简单的配置文件如下: #定义Nginx运行的用户及用户组 user userName userGroupName; #工作进程数目,根据硬件调整,通常等于CPU数量或者2倍于CPU worker_ ...

  9. Linux-基础学习(三)-Nginx学习

    1.nginx安装与部署 1.1 nginx入门 Web 网络服务是一种被动访问的服务程序,即只有接收到互联网中其他主机发出的 请求后才会响应,最终用于提供服务程序的 Web 服务器会通过 HTTP( ...

随机推荐

  1. cuckoo数据库变更

    1.cuckoo版本升级 cuckoo默认的数据库为sqlite,默认连接方式为sqlite:///os.path.join(REPORT_ROOT, "db", "cu ...

  2. PHP识别电脑还是手机访问网站

    最近在做phongap的项目,同一套代码,支持pc可以调试,又支持手机app调用接口,如果在pc上不屏掉调用接口js会报错,难以加载 ,所以就在网上找了,这个,不是原创,重在分享. <?php ...

  3. Struts2-2.了解struts.xml>package>action>result的name属性

    result决定跳转到哪个视图(jsp),可以预设值有多个. <?xml version="1.0" encoding="UTF-8" ?> < ...

  4. IE6/IE7浏览器中"float: right"自动换行的解决方法

    在项目中,调试IE6/IE7,发现一个bug,那就是:在同一个div包裹着,几个块级元素并列为一行的情况下,设置了float:right的块级元素会自动换行: 代码如下: <p> < ...

  5. lldpd启动脚本分析

    #!/bin/sh /etc/rc.common # Copyright (C) 2008-2012 OpenWrt.org #启动顺序 START=90 #创建PID文件 SERVICE_USE_P ...

  6. [ An Ac a Day ^_^ ] hdu 2553 N皇后问题 搜索

    曾经想过一天一AC 坚持下来的确不容易额 (我是没坚持下来 尽量以后坚持…… 经典的N皇后问题 搜索的入门问题 学了这么久竟然一直没敲过 今天敲一下…… 这道题也不是很简单额 纯暴力就超时了 要打一下 ...

  7. c# 对象object转换

    object app = new { name = "hyt", age = 18 }; Type t = app.GetType(); var name = t.GetType( ...

  8. js广告图片轮播

    <div class="box"> <div class="box1"></div> <div class=" ...

  9. shell 之awk 关联数组高级应用

    最近由于数据迁移过,有些用户信息需要再次确认下,也许数据量比较大,但是需要最终确认的比如说是用户ID和其对应的用户积分数,这样就会导致出现文本a(老的数据),文本b(新的数据).比如 这是文本a.tx ...

  10. tomcat容器启动的启动过程(三)

    Catalina的start方法 /** * Start a new server instance. */ public void start() { if (server == null) { l ...