[wp-hackers] Re: [wp-svn] [2579] trunk/wp-blog-header.php: Possible
fix for http://mosquito.wordpress.org/view.php?id=1275
Dougal Campbell
dougal at gunters.org
Thu May 5 13:41:46 GMT 2005
m at wordpress.org wrote:
> Revision
> 2579
> Author
> matt
> Date
> 2005-05-03 04:32:40 +0000 (Tue, 03 May 2005)
>
>
> Log Message
>
> Possible fix for http://mosquito.wordpress.org/view.php?id=1275
>
>
> Modified Files
>
> * trunk/wp-blog-header.php <#trunkwpblogheaderphp>
>
>
> Diff
>
>
> trunk/wp-blog-header.php (2578 => 2579)
>
> --- trunk/wp-blog-header.php 2005-05-01 19:21:42 UTC (rev 2578)
> +++ trunk/wp-blog-header.php 2005-05-03 04:32:40 UTC (rev 2579)
> @@ -134,7 +134,7 @@
> else $client_etag = false;
>
> if ( $client_last_modified && $client_etag ) {
> - if ( (strtotime($client_last_modified) <= strtotime($wp_last_modified)) || ($client_etag == $wp_etag) ) {
> + if ( (strtotime($client_last_modified) >= strtotime($wp_last_modified)) || ($client_etag == $wp_etag) ) {
> if ( preg_match('/cgi/',php_sapi_name()) ) {
> header('Status: 304 Not Modified');
> echo "\r\n\r\n";
This logic still isn't complete. It only handles the case where both the
If-Modified-Since *and* the If-None-Match (ETag) headers are present.
But the spec allows for a case where only one (either one) of the
headers is present.
If only one of them is present, then it must satisfy its condition in
order to return a 304: either If-Modified-Since is >= the web content's
modify date, OR the If-None-Match is equal to what the server thinks it
should be.
If both are present, then both conditions must be true (which is all
we're checking right now).
We need to put back in support for the case where only one of the
headers are present, or we'll be missing some 304 opportunities, and
wasting bandwidth.
--
Dougal Campbell <dougal at gunters.org>
http://dougal.gunters.org/
More information about the wp-hackers
mailing list