ope*_*per 7 ruby-on-rails passenger nginx ruby-on-rails-3
我面临的问题是:
我通过ajax从浏览器发出请求并发送处理请求,一旦进行了ajax调用,我会显示一个带有进度条的弹出窗口,弹出窗口大致保留在2到4分钟之间的任何位置并突然关闭.当我通过chrome网络选项卡看到请求时,我看到该请求在弹出窗口显示的相同持续时间内停止.我看到逻辑正在按预期在后台执行,但弹出窗口没有等待响应并在它应该之前关闭.
我已将日志级别设置为7,我看到以下信息
如果有50条记录需要处理,我会在这50条记录开始处理之前看到这些信息(即我看到下面的50行)
[pid = 29768 thr = 70024879087720 file = abstract_request_handler.rb:472 time = 2016-08-30 08:06:43.250]:在主插座上接受新请求
最后我看到了这个
[pid = 29571 thr = 139782938920704 file = ext/nginx/HelperAgent.cpp:923 time = 2016-08-30 08:10:32.682]:无法将HTTP响应转发回HTTP客户端:似乎用户点击了在他的浏览器中的"停止"按钮上.
我怀疑它有一些超时问题,但不确定它是否处于乘客级别或ngnix级别.
我已经尝试将各种ngnix超时参数设置为更高的值,但它没有帮助.
proxy_read_timeout 400s;
client_body_timeout 180s;
keepalive_timeout 180s;
client_header_timeout 180s;
**I suspect it might be some issue with passenger config, but not sure.**
Run Code Online (Sandbox Code Playgroud)
任何人都可以让我知道我能做什么,以便请求继续,而不会突然结束
小智 0
这是文件上传/下载?对于下载,我在相关位置使用
proxy_buffering off;
proxy_request_buffering off;
chunked_transfer_encoding on;
client_body_timeout 3600;
proxy_read_timeout 900;
Run Code Online (Sandbox Code Playgroud)
对于文件上传,我使用
client_max_body_size 10m;
client_body_timeout 600s;
Run Code Online (Sandbox Code Playgroud)
(警告,如果您在关联位置中有返回位置,则应将其设置在第一个位置)
或者某种通过 http 的事件?与大块?活着 ?对于块我使用:
proxy_buffering off;
proxy_buffer_size 4k;
proxy_request_buffering off;
proxy_cache off;
underscores_in_headers on;
Run Code Online (Sandbox Code Playgroud)
(有关块的信息,NGINX 纠正了 1.11.2 if chunk 中带有 sub_filter 指令的旧错误)
在您的浏览器中,在“网络”选项卡的“调试”窗口中,请求失败后显示的错误或状态是什么?
状态代码和/或响应标头?
有时预览中也可能有回复/信息。
| 归档时间: |
|
| 查看次数: |
306 次 |
| 最近记录: |