具有带有反向代理配置的NGINX Plus:
upstream busgw_services_backend {
server esbacc002:8281;
server esbacc004:8281;
keepalive 32;
zone busgw_services_backend 32k;
}
server {
listen 443 ssl;
listen 80;
server_name busgw-acc;
# some ssl settings
location / {
proxy_pass http://busgw_services_backend;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
health_check interval=2s passes=1 fails=2 uri=/services/healthcheck match=match_ok ;
}
access_log /var/log/nginx/access.log main if=$abnormal;
error_log /var/log/nginx/error.log warn;
}
通常,此配置运行良好。但是-我们有一个仅返回部分响应的请求。
后端响应是一个WSDL,在单个块中返回的块响应长度为0x13c6(5062)字节。 Nginx仅返回0xf7a(3962)字节,然后无法乘积附加字节(或整理0块)
块大小是否有限制?
编辑:
禁用响应缓冲区会导致返回整个响应(作为两个单独的块)
proxy_buffering off;
但是客户端没有收到最后0个块,导致等待其他数据
答案 0 :(得分:0)
最后-下列设置似乎可以解决问题
proxy_buffering off;
proxy_cache off;
proxy_http_version 1.1;