2010-06-14 69 views
3

我試圖緩存已經生成的圖像。您可以通過resize.php訪問文件來創建圖像?width = x & height = y。 如果該寬度和高度的圖像不存在,我使用imagemagick來創建它。但是,如果它確實存在,它將被提供給訪問者。用PHP緩存生成的圖像

!file_exists($ name)檢查工作正常,因此在不需要處理時不會處理。但是圖像還需要一段時間才能加載。

我的閱讀文件的方法不正確,或者我錯誤地設置了標題?

if (!file_exists($name)) { 
//image processing here 
} 
header("Content-Type: image/png"); 
header("Expires: Sat, 25 Jul 2020 10:00:00 GMT"); 
readfile($name); 

謝謝。

回答

4

如果我不得不這樣做,我會處理圖像,如果它不存在將它保存在一些網絡可訪問的文件夾。如果文件存在只是重定向到它 標題('Location:http://www.yoursite.com/path/to/existing/file.png')

+0

啊哈,呃!謝謝您的幫助!我知道php腳本自動不會被緩存,所以readfile每次只是讀取圖像。 – lafoaug 2010-06-14 15:49:36