Ruby on rails 104:对等方重置连接:nginx+;彩虹&x2B;超过1MB的上传
我正在运行ThreadPool rainbows+nginx(unix套接字) 在上传大文件时,我在nginx错误日志中得到以下信息(应用程序日志中没有任何内容): 浏览器接收到响应:Ruby on rails 104:对等方重置连接:nginx+;彩虹&x2B;超过1MB的上传,ruby-on-rails,nginx,unicorn,unix-socket,rainbows,Ruby On Rails,Nginx,Unicorn,Unix Socket,Rainbows,我正在运行ThreadPool rainbows+nginx(unix套接字) 在上传大文件时,我在nginx错误日志中得到以下信息(应用程序日志中没有任何内容): 浏览器接收到响应: 413 Request Entity Too Large 为什么会发生这种情况 在nginx中,在http和服务器级别(以防万一)都设置了“client_max_body_size 80M;” nginx通过unix套接字与rainbows通信(上游套接字+位置@proxy\u pass) 我在其他日志中没有
413 Request Entity Too Large
为什么会发生这种情况
- 在nginx中,在http和服务器级别(以防万一)都设置了“client_max_body_size 80M;”
- nginx通过unix套接字与rainbows通信(上游套接字+位置@proxy\u pass)
- 我在其他日志中没有看到任何内容。我查过:
- 彩虹原木
- 工头日志
- 应用程序日志
- dmesg和/var/log/messages
- 上载大小大于1 MB的文件时会发生这种情况
nginx.conf
中设置了客户端最大体大小,将体大小限制为1Mb,例如
client_max_body_size 1M;
在这种情况下,您需要将其删除,以允许上载超过1M的文件。结果是Rainbows有一个名为client\u max\u body\u size
的配置选项,默认为1MB
选择是
如果此选项处于启用状态,Rainbows将以静默方式413
处理大型请求。你可能不知道它坏了,除非你在它前面跑些什么
Rainbows! do
# let nginx handle max body size
client_max_body_size nil
end
通常dmesg
甚至dmesg | grep oom-i
都有帮助。我在日志中没有看到任何内容。我已经检查过:rainbows日志(没有请求记录)、foreman日志(没有请求记录)和应用程序日志(没有请求记录)。我可以100%地重现这个问题(总是在上传超过1MB时)。是的。我已经检查了dmesg和/var/log/messages。还有什么我可以看的吗?指令应该会有帮助。现在你已经编辑了你的答案。以前它是一个问题,应该作为评论而不是答案发布。是的,我设置了它,但我使用小写字母m
(设置为80m)。这可能是个问题吗?将在今天晚些时候使用大写字母进行尝试
Rainbows! do
# let nginx handle max body size
client_max_body_size nil
end