可能是一個普遍的問題,即使是'它是特定於某種類型的網站/應用程序,但會給它一個鏡頭,無論。我有點困惑,不管我現在的項目應該緩存我的縮略圖,通常我會,但我不確定這個項目。我會更好地解釋我的情況,以便更好地理解。要緩存或不緩存 - 圖庫照片網站
我有一個股票照片網站,爲名人,新聞和體育照片,顯示授權客戶(報紙&雜誌)我們整個圖書館。這些照片有一定的價值,我採取了很多措施,以確保較大的照片隱藏在Amazon S3上或根目錄之上,並有過期鏈接和哈希鏈接,因此我不想通過添加緩存來危害我的照片當我不應該或添加不正確的緩存。一個典型的用戶可能會搜索一張照片並且再也不會看到它,或者他們可能會將照片保存到他們的收藏夾中,並每天看兩次。用戶也可以在幾分鐘內瀏覽10,000張照片。
我的問題是;我應該沒有緩存還是緩存有限,例如1小時或1天?如果我爲照片設置緩存過期,那麼我的客戶可以在他們的瀏覽器中訪問這些內容,比如說'緩存圖像'嗎?緩存有價值的照片是否還有其他安全問題?
我瞭解屏幕抓取,打印和規則;如果你不希望它被盜,不要把它放在網上,但我想盡我所能在我的應用程序的安全性和速度。
我使用PHP(5.2.17)從PHP的ReadFile()
和IMG元素(如<img src="loadImage.php?p=2342dfsfsdfwf2dfsf">
)將圖像從亞馬遜加載到我的客戶端瀏覽器。
爲了澄清什麼類型的緩存:
<?php
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
header("Content-Type: image/jpeg");
readfile($url);
?>
你的意思是*瀏覽器*緩存?或緩存大拇指生成的服務器端? – Hamish 2012-07-23 02:31:54
@Hamish:服務器端,當我從亞馬遜拉圖像並打印到屏幕(loadImage.php)時,我可以添加緩存標題。目前,對於縮略圖,我沒有提供緩存頭。這是我所質疑的。 – TheCarver 2012-07-23 02:37:07
緩存*標題*用於客戶端,而不是服務器。 – Hamish 2012-07-23 02:38:24