首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >缓存或不缓存-股票图片网站

缓存或不缓存-股票图片网站
EN

Stack Overflow用户
提问于 2012-07-23 10:25:42
回答 1查看 201关注 0票数 0

这可能是一个一般性的问题,尽管它是特定于特定类型的网站/应用程序,但无论如何都会给它一个机会。我有点困惑,不管我是否应该缓存我当前项目的缩略图,通常我会,但我不确定这个项目。我会更好地解释我的情况,以便更好地理解。

我有一个股票照片网站,为名人,新闻和体育照片,显示授权客户(报纸和杂志)我们的整个图书馆。这些照片有一定的价值,我已经采取了很大的措施来确保较大的照片要么隐藏在亚马逊S3上,要么隐藏在根目录之上,带有过期和散列的链接,所以我不想在不应该的时候添加缓存或添加不正确的缓存来危及我的照片。一个典型的用户可能会搜索一张照片,然后再也看不到它,或者他们可能会将一张照片保存到他们的收藏夹中,然后每天看到两次。用户还可以在几分钟内浏览10000张照片。

我的问题是:我应该根本没有缓存,还是应该有一个有限的缓存,比如1小时或1天?如果我为一张照片设置了一个缓存过期,我的客户是否可以在他们的浏览器上访问它,比如“缓存的图像”?缓存有价值的照片还存在其他安全问题吗?

我知道屏幕抓取,打印和规则;如果你不想它被盗,就不要把它放到网络上,但我想在我的应用程序中尽我所能保证安全性和速度。

我正在使用PHP (5.2.17)通过PHP的ReadFile()和IMG元素(如<img src="loadImage.php?p=2342dfsfsdfwf2dfsf"> )将图像从亚马逊加载到我客户的浏览器中。

要阐明哪种类型的缓存:

代码语言:javascript
复制
<?php
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
header("Content-Type: image/jpeg");
readfile($url);
?>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-23 10:47:25

如果您非常关心图像的安全性,那么我建议您不要以使用更多带宽(以及较慢的加载时间)为代价来缓存它们。如果您更关心带宽使用而不是安全性,请对其进行缓存。

然而,如果它们是真正的缩略图,如果它们很小,质量不高等,那么它们对用户来说就没有什么价值了。一种解决方案是给图像添加水印。

从理论上讲,可以从浏览器的缓存(http://protechgeek.com/how-to-extract-images-from-browser-cache/)中提取图像,因此如果缓存了图像,就可以检索它们。更简单的是,有人可以像你提到的那样抓取屏幕,或者右键单击并复制/粘贴。水印是解决这个问题的唯一方法。

tl;dr

在我看来,我不认为为了最小的安全提升而增加额外的带宽和加载时间是值得的。请改用水印。大多数库存图片网站使用水印是有原因的--它们是防止有人直接窃取图片的唯一方法(尽管,根据图片和水印,熟练的Photoshop用户可以令人信服地将其删除)。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11605750

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档