PHP :: Bug #24827 :: ob_gzhandler overrides Vary header
| Bug #24827 | ob_gzhandler overrides Vary header | ||||
|---|---|---|---|---|---|
| Submitted: | 2003-07-27 06:09 UTC | Modified: | 2003-08-02 11:07 UTC | ||
| From: | phpnet at shredzone dot de | Assigned: | |||
| Status: | Closed | Package: | Zlib related | ||
| PHP Version: | 4.3.2 | OS: | Linux | ||
| Private report: | No | CVE-ID: | None | ||
[2003-07-27 06:09 UTC] phpnet at shredzone dot de
Description:
------------
I am using ob_gzhandler to compress the page output. Now I need to add an 'accept-language' to the Vary header, because my page content depends on the language settings of the browser.
Anyhow, it is impossible to change the Vary header when using ob_gzhandler. It seems like ob_gzhandler is overriding an existing Vary header just before returning the compressed content to the browser.
Expected behaviour: ob_gzhandler should check if a Vary header has already been set. If so, it should only ADD an "accept-encoding" unless already present, or should not change the Vary header at all.
Reproduce code:
---------------
<?php
header("vary: accept-encoding,accept-language");
ob_start('ob_gzhandler');
print("<html><body>foo</body></html>");
?>
Expected result:
----------------
A HTTP header "vary: accept-encoding,accept-language" being returned.
Actual result:
--------------
A HTTP header "Vary: Accept-Encoding" (note the uppercase letters) will always be returned.
Patches
Pull Requests
History
AllCommentsChangesGit/SVN commits
[2003-07-27 13:16 UTC] iliaa@php.net