Ubuntu – Intermittent 400 bad request header field is missing ‘:’ with Apache and SSL

apache-2.2sslUbuntu

Apache is returning rare intermittent 400 "bad request header field is missing ':' olhuaqv3o1t29flvr0 (random string)" errors. This seems to be related to https access and happens from Firefox, IE, Chrome etc. I am using a certificate from rapidssl.

Apache/2.2.14 (Ubuntu) DAV/2 SVN/1.6.6 mod_jk/1.2.28 PHP/5.3.2-1ubuntu4.5 with Suhosin-Patch mod_ssl/2.2.14 OpenSSL/0.9.8k

Anyone know how to fix this?

Best Answer

I was having this problem with apache 2.2.9 and upgrading to apache 2.2.22 solved the problem for me.

I would get random 400 response codes on some of the page requests. Sometimes images, sometimes AJAX requests. Occasionally it would be the page itself that would return a 400 along with this message.

Bad Request Your browser sent a request that this server could not understand. Request header field is missing ':' separator. live

I found the following bug report for that seemed related. The bug was fixed in apache 2.2.15 : https://bugzilla.redhat.com/show_bug.cgi?id=652335

I think this bug is the cause for lots of random errors when using https: Your browser sent a request that this server could not understand Request header field is missing ':' separator.

So thought I'd try updating to the latest apache - and that seemed to work.