Re: Using the browser's Webcache [message #175083 is a reply to message #175080] |
Thu, 11 August 2011 10:45 |
Jerry Stuckle
Messages: 2598 Registered: September 2010
Karma:
|
Senior Member |
|
|
On 8/11/2011 4:54 AM, Luke wrote:
> On Aug 10, 12:57 pm, Jerry Stuckle<jstuck...@attglobal.net> wrote:
>> On 8/10/2011 5:50 AM, Luke wrote:
>>
>>
>>
>>
>>
>>> Hi,
>>
>>> I'm trying to utilize the browser's Webcache with php. I have a
>>> timestamp of the time when my site has been changed and I'm trying to
>>> send a "304 Not Modified" if the user already has my page in his
>>> cache. I'm using the function described on this page [1] under "Use
>>> PHP to force a conditional GET". I also added the headers
>>
>>> header("Cache-Control: public");
>>> header("Expires: Thu, 15 Apr 2012 20:00:00 GMT");
>>> header("Pragma: cache");
>>
>>> but the page gets reloaded every time. These are the headers from the
>>> server:
>>
>>> Status-Code:200 OK
>>> Cache-Control:public
>>> Connection:Keep-Alive
>>> Date:Wed, 10 Aug 2011 08:20:44 GMT
>>> Etag:"b393df7221a36ce8e02e96c7df308a16"
>>> Expires:Thu, 15 Apr 2012 20:00:00 GMT
>>> Keep-Alive:timeout=15, max=99
>>> Last-Modified:Wed, 10 Aug 2011 07:50:04 GMT
>>> Pragma:cache
>>
>>> I really can't figure out what the problem is.
>>
>>> Greetings from Germany
>>> Lukas
>>
>>> [1]http://www.askapache.com/php/speed-up-sites-with-php-caching.html
>>
>> First of all, I don't see a 304 in your headers. But the bottom line is
>> you can't force a 304 - it's up to the browser to make a conditional
>> request (HTTP_IF_MODIFIED_SINCE).
>>
>> But then it's generally not necessary to do it in PHP anyway - the web
>> server will handle it.
>>
>> --
>> ==================
>> Remove the "x" from my email address
>> Jerry Stuckle
>> JDS Computer Training Corp.
>> jstuck...@attglobal.net
>> ==================
>
> Hi Jerry,
> look at the link I posted (only the section "Use
>>> PHP to force a conditional GET") — I'm sending a 304 header. Anyway, the browser says it get's a status-code 200. That's what I don't get. The point why I'm sending those headers manually is because in this particular case I'm generating an image and redirect to it (with a location-header). But if the User already has that image in it's cache, I just wanna send a 304, so that there's no redirect and thus less requests.
Hi, Luke,
Yes, I already looked at the link before I replied previously. My
comments haven't changed.
--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex(at)attglobal(dot)net
==================
|
|
|