RE: Not using cached version

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks. I went for the version where I use the path to the file instead :)

/Peter

-----Original Message-----
From: Stut [mailto:stuttle@xxxxxxxxx] 
Sent: Wednesday, August 30, 2006 5:02 PM
To: Peter Lauri
Cc: php-general@xxxxxxxxxxxxx
Subject: Re:  Not using cached version

Peter Lauri wrote:
> I have some images stored in a database (only file name and other relevant
> information, rest stored in file system).
>
> I use the following html to access them: 
>
> <img src='image.php?imageid=123' />
>
> At some pages I have the same image, so that tag will be seen on multiple
> places on the same page. So what I am curious is why all of the different
> images are loaded separately, instead of just recognizing that they are
the
> same and use a cache version?
>
> This is the code that do all the work:
>
>   Header ("Content-type: $image_type");
>   readfile("files/$image");
>
> I am a little bit lost here; kick me in the right direction if you can :)
>   

Probably because the browser sees the ? in the URL, thinks dynamic and 
doesn't cache the result. You can set caching headers to get around this 
(Google for it), or if you want *all* browsers to do it right, even the 
poorly implemented ones, you could modify the URL so it doesn't have the 
?. I do this using the Apache MultiViews option and a URL similar to 
/image/123.gif. That actually runs /image.php which pulls the 
REQUEST_URI server variable apart to get the required image. Do both and 
you should be good for all browsers.

-Stut

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux