Re: [PHP-DEV] PHP 4.0 Bug #8017: PHP ignores "If-Modified-Since" headers From: Jordan Russell (jr-phplist <email protected>)
Date: 11/29/00

> JR>> The way it would work is very simple -- PHP, from how I
> JR>> understand it, has two phases, first where it collects the
> JR>> headers, and then where it outputs the body. At the moment where
> JR>> it starts to output the body, it should compare the
> JR>> Last-Modified header outputted by the script (if any) against
> JR>> If-Modified-Since. If (Last-Modified > If-Modified-Since), it
> JR>> proceeds normally and sends back a 200 code. If (Last-Modified
> JR>> <= If-Modified-Since), it would not output any body -- ignoring
> JR>> all "echo"s in the script and further HTML in the document. The
> JR>> script, however, continues to execute normally, completely
> JR>> oblivious that no body is being sent out.
>
> Hmm. That is not exactly what was meant by If-Modified-Since, I guess.

How so? What I described is exactly what the HTTP spec says should happen.

> Also, I'm not sure it worth this - we'd have to check for two headers on
> _each_ script.

Sorry I'm not sure what you mean here... It would only have to watch for
*one* header -- Last-Modified. The web browser sends If-Modified-Since as
part of the HTTP request, so it will be available and ready before script
parsing begins.

> On the other hand, now I see what you mean - it probably could be
> implemented, though it is not so easy. There's a lot of code in Apache
> that deals with all kinds of "special cases", and I'm not sure which of
> them should be handled in PHP.

Well, I sincerely hope it is implemented. :) As I said before, this "lack of
functionality" hurts PHP's own web site too. Whoever wrote
http://www.php.net/include/shared-manual.inc went to great lengths to
calculate a Last-Modified date, when in reality it is useless since PHP
ignores If-Modified-Since. (I'm assuming that their goal in calculating a
Last-Modified date was to get the manual pages to cache.)

Thanks.

Jordan Russell

-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: php-dev-unsubscribe <email protected>
For additional commands, e-mail: php-dev-help <email protected>
To contact the list administrators, e-mail: php-list-admin <email protected>