You want proxy_buffer_size. http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_buffer_size
On Wed, Feb 3, 2016 at 2:24 PM, Rafał Radecki <[email protected]> wrote: > Hi All. > > I am currently trying to find the source of "upstream sent too big header > while reading response header from upstream" in my logfiles because nginx > as a consequence returns "502 Bad Gateway". > > Basically I used tcpdump to get the traffic and I compared two cases: > > 1) the communication is ok: > > 12167 07:03:51.466937 IP 10.10.3.7.80 > 10.10.2.121.43817: Flags [P.], seq > 1779345520:1779348777, ack 1001934214, win 219, options [nop,nop,TS val > 2527240108 ecr 619023542], length 3257 > 12168 E...7.@.@... > 12169 > 12170 .. > 12171 > 12172 .y.P.)j..p;.M............ > 12173 ....$...HTTP/1.1 302 Found^M > 12174 Content-Length: 58^M > 12175 Content-Type: text/html; charset=utf-8^M > 12176 Date: Wed, 03 Feb 2016 12:03:51 GMT^M > 12177 Location: /^M > 12178 Set-Cookie: rfid-mgt-console=... > 12179 Set-Cookie: rfid-mgt-console.sig=xxx; path=/; expires=Wed, 03 Feb > 2016 13:03:51 GMT; httponly^M > 12180 Vary: Accept, Accept-Encoding^M > 12181 X-Cf-Requestid: yyy^M > 12182 X-Powered-By: Express^M > 12183 ^M > 12184 <p>Moved Temporarily. Redirecting to <a href="/">/</a></p> > > In this case everything up to "Moved T..." is in one response from > upstream (10.10.3.7). > > 2) nginx throws mentioned error to error.log and returns 502 code > 56874 06:31:45.307207 IP 10.10.3.7.80 > 10.10.2.121.58073: Flags [P.], seq > 953075345:953079441, ack 3028520986, win 219, options [nop,nop,TS val > 2526758567 ecr 617097381], length 4096 > 56875 E..4..@.@... > 56876 > 56877 .. > 56878 > 56879 .y.P..8...........h...... > 56880 ..F.$.(.HTTP/1.1 302 Found^M > 56881 Content-Length: 58^M > 56882 Content-Type: text/html; charset=utf-8^M > 56883 Date: Wed, 03 Feb 2016 11:31:45 GMT^M > 56884 Location: /^M > 56885 Set-Cookie: rfid-mgt-console=... > 56886 Set-Cookie: rfid-mgt-console.sig=xxx; path=/; expires=Wed, 03 Feb > 2016 12:31:45 GMT; httponly^M > 56887 Vary: Accept, Accept-Encoding^M > 56888 X-Cf-Requestid: yyy > > 56889 06:31:45.307213 IP 10.10.2.121.58073 > 10.10.3.7.80: Flags [.], ack > 953079441, win 280, options [nop,nop,TS val 617097490 ecr 2526758567], > length 0 > 56890 E..4..@[email protected] > 56891 > 56892 .y > 56893 > 56894 .....P....8.............. > 56895 $.)...F. > > 56896 06:31:45.307218 IP 10.10.3.7.80 > 10.10.2.121.58073: Flags [P.], seq > 953079441:953079542, ack 3028520986, win 219, options [nop,nop,TS val > 2526758567 ecr 617097381], length 101 > 56897 E.....@.@... > 56898 > 56899 .. > 56900 > 56901 .y.P..8...........JU..... > 56902 ..F.$.(.503-564da79aecb5^M > 56903 X-Powered-By: Express^M > 56904 ^M > 56905 <p>Moved Temporarily. Redirecting to <a href="/">/</a></p> > > In this case response from upstream (10.10.3.7) is much larger because of > larger "Set-Cookie: rfid-mgt-console=..." returned and is divided into two > parts. "upstream sent too big header while reading response header from > upstream" is written to error.log. > > For clarity I only pasted the part of the traffic which differs. > > Initially in "http" section in nginx.conf: > > ... > http { > proxy_max_temp_file_size 0; > > proxy_buffering off; > ... > > I tried to change it to: > > ... > http { > proxy_max_temp_file_size 0; > > proxy_buffering on; > > proxy_buffers 8 256k; > ... > > And I also added: > > ... > proxy_buffering on; > > proxy_buffers 8 256k; > ... > > to my "server" sections. I performed a restart but the error did not > change. > > Can someone help me with this one? > > BR, > Rafal. > > _______________________________________________ > nginx mailing list > [email protected] > http://mailman.nginx.org/mailman/listinfo/nginx >
_______________________________________________ nginx mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx
