Date: 11/13/99
- Next message: Sascha Schumann: "Re: [PHPLIB-DEV] cvs commit"
- Previous message: Sascha Schumann: "Re: [PHPLIB-DEV] cvs commit"
- In reply to: Sascha Schumann: "Re: [PHPLIB-DEV] cvs commit"
- Next in thread: Sascha Schumann: "Re: [PHPLIB-DEV] cvs commit"
- Reply: Sascha Schumann: "Re: [PHPLIB-DEV] cvs commit"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
* Sascha Schumann <sascha <email protected>> [11/13/99 11:34pm]
> > From: padraic
> > Date: Sat Nov 13 22:48:36 1999
> > Modified files:
> > php-lib/php/menu.inc
> > php-lib/php/session.inc
> >
> > Log message:
> > Modified the cache control directives slightly since PHP
> > only sends one (the last) HTTP header for each header
> > field-value. This means that if the cache-control header
> > is sent twice, once with public and next with max-age, PHP
> > only sends the max-age part.
>
> That is a bug in PHP. With which server did you test it?
Apache 1.3.6 with PHP 3.0.12 as an Apache module.
I noticed on the PHPLIB mailing list that there was a conversation
surrounding MSIE and multiple field-values within the same header. This
conversation was concerned with the cache-control: no-cache,
must-revalidate header. The header was subsequently split into two parts
which apparently fixed the bug. Sometime subsequent to that, someone
removed the must-revalidate cache-control header entirely. From what I can
tell this is correct since must-revalidate is superfluous when no-cache is
also chosen - there is nothing to revalidate since the page isn't in the
cache.
> > I changed the cache-control headers to send mutliple values in
> > a single header (this is allowed in HTTP 1.1. see RFC 2068
> > Section 4.2).
>
> MSIE has problems with multiple fields in cache-control.
> Please revert that change.
Remember we are now speaking of the public and private cache options
only. "no" cache was already modified to have only one cache-control line
and so doesn't enter into the multiple header issue.
If we assume that PHP will continue to work as I have experienced, then
reverting the source code back doesn't really get us anywhere. We have our
source code sending two lines when only one actually gets sent by PHP. We
should either pick one of the field-values (public/private, max-age), live
with the bug in MSIE? I can do some testing with MSIE 5 and figure out
what it actually does with "public, max-age=nnn". My guess is that at
worst it ignores that header all together which in that case would cause
it to act like an HTTP 1.0 level browser and taking its cacheability cues
from the Expires and Pragma headers.
If PHP gets fixed, then putting the source code back to sending two
cache-control lines sounds right to me.
Let me know your thoughts.
-- Padraic Renaghan <padraic <email protected>> http://renaghan.com/pcr/ bookmarker - web based bookmark management GPL software phpop - web based POP mail reader GPL software clicked and the read - ezine- PHPLIB Developers Mailing List. Send messages to <phplib-dev <email protected>>. To unsubscribe, send "unsubscribe" to <phplib-dev-request <email protected>> in the body, not the subject, of your message.
- Next message: Sascha Schumann: "Re: [PHPLIB-DEV] cvs commit"
- Previous message: Sascha Schumann: "Re: [PHPLIB-DEV] cvs commit"
- In reply to: Sascha Schumann: "Re: [PHPLIB-DEV] cvs commit"
- Next in thread: Sascha Schumann: "Re: [PHPLIB-DEV] cvs commit"
- Reply: Sascha Schumann: "Re: [PHPLIB-DEV] cvs commit"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]

