[dev] [commits] Horde branch master updated. 3e6d1441a7635ed9ce8078b34b356f08f22d9422

Chuck Hagenbuch chuck at horde.org
Sat Apr 3 20:57:17 UTC 2010


Quoting Michael Rubinsky <mrubinsk at horde.org>:

> Quoting Chuck Hagenbuch <chuck at horde.org>:
>
>> Quoting Michael Rubinsky <mike at theupstairsroom.com>:
>>
>>>   RFC2616 (HTTP/1.1) says headers are case insensitive anyway, so  
>>> we probably
>>>   shouldn't be relying on case for comparisons...
>>>
>>> framework/Controller/lib/Horde/Controller/Request/Http.php |    4 ++--
>>> 1 files changed, 2 insertions(+), 2 deletions(-)
>>>
>>> http://git.horde.org/diff.php/framework/Controller/lib/Horde/Controller/Request/Http.php?rt=horde-git&r1=2aa47b34d9acd2b029aa10ad96a0048b59dc06a6&r2=3e6d1441a7635ed9ce8078b34b356f08f22d9422
>>
>> Any idea how well browsers/servers/etc. comply with that (being  
>> case-insensitive)? That'd certainly simplify things...
>>
>> -chuck
>
> As far as servers go, I know that lighttd and apache handle request  
> headers in a case-insensitive manner - consistent with the RFC. what  
> I'm really talking about here are the response headers though. I'm  
> not 100% sure how each browser handles things, but the RFC  
> definitely states these are to be handled in a case-insensitive  
> manner.  A search on google revealed a number of bug reports from  
> other projects related to case-sensitive handling of headers and in  
> each instance that I came across, this was fixed by using something  
> like strcasecmp() or similar when comparing the headers. For our  
> case, I think we should use array_change_key_case() in the  
> _getAllHeaders() method before returning the array of headers, and  
> then in getHeader($header) we should strlower($header) before  
> fetching the header from the array...

Works for me. Thanks.

-chuck


More information about the dev mailing list