ruby-on-rails – net :: ERR_INCOMPLETE_CHUNKED_ENCODING nginx

我在2个不同的服务器上托管了2个RoR Web应用程序.对于一个特定页面,请求从第二个应用程序提供.对于其余页面,请求由主应用程序提供.主应用程序的Nginx设置location /customer/help/ {proxy_pass http://second-applic...

我在2个不同的服务器上托管了2个RoR Web应用程序.对于一个特定页面,请求从第二个应用程序提供.对于其余页面,请求由主应用程序提供.
主应用程序的Nginx设置

location /customer/help/ {
            proxy_pass http://second-application:3020/help_and_support/;
}
location /assets/ {
            proxy_pass http://second-application:3020/assets/;
}

这工作到昨天一直很好.现在,/ customer / help / page未正确加载.在Firefox中它显示一个空白页面,在chrome中,它部分加载,控制台显示错误

net::ERR_INCOMPLETE_CHUNKED_ENCODING

调试后我发现问题可能是通过API发送的图像数据.我的第二个应用程序调用API来获取图像并在页面上显示它们

<% url_with_binary_data = "data:image/" + "jpeg" + ";base64," + u.photo_url.to_s %>
<%= image_tag(url_with_binary_data, :class => "userpic")  %>

用于获取图像的API代码

photo_url: Base64.encode64(u.photo.file.read).gsub("\n", '')

解决方法:

您可能想要检查运行Nginx工作线程的用户是否拥有目录/ var / lib / nginx.

我已经了解到,当您为Nginx提供过大的响应时,它会使用此目录作为临时文件的工作目录.如果工作进程无法访问它,Nginx将在传输完成之前终止传输,因此错误INCOMPLETE_CHUNKED_ENCODING.

本文标题为:ruby-on-rails – net :: ERR_INCOMPLETE_CHUNKED_ENCODING nginx