TalkPHP

TalkPHP (http://www.talkphp.com/forums.php)
-   General (http://www.talkphp.com/general/)
-   -   Using Expire Header to cache images (http://www.talkphp.com/general/2370-using-expire-header-cache-images.html)

buildakicker 02-29-2008 12:08 AM

Using Expire Header to cache images
 
Hi all!
I am trying to find some info on this. Is this something I should be doing? I have been reading about it, but am not to sure how to implement it.

Thanks!:-)

Alan @ CIT 02-29-2008 12:25 AM

Hiya,

I'm afraid that I am not entirely sure what you are trying to do. Can you post some links or a code sample?

Thanks,
Al.

buildakicker 02-29-2008 12:33 AM

Hi Alan@CIT,

thanks for the reply... I was reading about Expired Headers and speeding up the load time with my site... I don't quite understand it. So I thought I would ask.

I have done this in my .htaccess file:

<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/gif A2592000
ExpiresByType image/jpg A2592000
ExpiresByType image/png A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType text/css A2592000
</IfModule>

...but thought I could do that with PHP Headers() somehow. Is that true?

Alan @ CIT 02-29-2008 12:48 AM

Hmm.. that's a good question. I would assume that you can but have no idea how. I'd like to know myself though so if anyone does know, come post! :-D

Alan

Salathe 02-29-2008 02:05 AM

The Expires header is one that you should be using (and probably are without knowing it) for anything which isn't 100% dynamic content. It's just another normal header (like Content-Type, Location, etc.). The purpose is simply to tell the client (browser) that after the expiry time, it must ask the server for a fresh copy of the item. The value of the header must be a date like Fri, 29 Feb 2008 01:52:00 GMT.

If the server doesn't send an Expires header, or one which is really short, then your browser will keep asking to see if it needs to re-download the content (or worse, cache the content however long it feels like) whenever you try to view the page/image/whatever. If the server says, for image.jpg, "Hey this image expires in a week" and you view the image 100 times a day (it's a photo of your new pet, or something) that's lots less downloads than if your browser just grabbed the file every time.

Other helpful headers to look into are Last-Modified and If-Modified-Since, for a start, which can further help with caching (and reducing time and effort travelling to and from the server) in a more flexible way than Expires.

P.S. I'm sure there was an article or two somewhere recently about this, aimed at using these headers specifically with PHP, but I can't remember where it was. :-/


All times are GMT. The time now is 03:30 AM.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.1.0