nginx/1.3.2 - 4xx responses are returned without HTTP headers, bug?
Maxim Dounin
mdounin at mdounin.ru
Mon Jul 9 09:52:27 UTC 2012
Hello!
On Mon, Jul 09, 2012 at 10:41:19AM +0200, Sjon Hortensius wrote:
> Hi,
>
> I think I stumbled upon a bug in nginx but I would like to get
> someone else's opinion on this.
>
> It seems all 4xx errors are not prefixed by headers in HTTP
> responses. I have a simple test-script in bash which you can run to
> verify this behavior:
>
> function req { echo -n "GET /bugtest?id="; for i in `seq 15000
> 17100` ; do echo -n "%7C$i" ; done ; echo -en "HTTP/1.1\nUser-Agent:
> Mozilla/5.0\nConnection: Close\nHost: wiki.nginx.org\r\n\r\n" ; } ;
> req | nc wiki.nginx.org 80
>
> I can also reproduce this for other 4xx responses. My interpretation
> of the RFC is that this is unwanted, see
> http://tools.ietf.org/html/rfc2616#section-6.1
Headers aren't sent if nginx assumes the request is in HTTP/0.9
format. The above script makes nginx to think it's HTTP/0.9 as
uri used dosn't fit into header buffer and nginx isn't able to
see "HTTP/1.1" before it returns 414.
Maxim Dounin
More information about the nginx
mailing list