Having dot in the header name

Vinay Y S vinay.ys at gmail.com
Fri Jan 22 21:38:08 MSK 2010

I see that nginx as proxy rejects headers with name like "auth.client" or
"auth.token" (with dot in their name) and stops parsing further headers.
Thus the request to the upstream server doesn't contain these headers. From
the logs, it says "client sent invalid header line".

Why is having a dot in the header name considered invalid? I searched the
relevant RFCs (2616 and 822) and they don't seem to exclude dot. May I know
the reason for nginx to reject headers with dot while other servers like
Apache httpd parse headers with dot just fine.

Also, in the nginx source I noticed a undocumented directive
"ignore_invalid_headers" which is on by default. It when set to off, makes
nginx passes such headers to the upstream server properly.

Is it safe to use this directive? Are there any side-effects, performance
issues related to using it?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx/attachments/20100123/b43717ba/attachment.html>

More information about the nginx mailing list