【问题标题】:PHP Image CachePHP 图像缓存
【发布时间】:2011-06-22 21:19:16
【问题描述】:

我创建了一个迷你画廊,我所做的只是使用 FTP,没有数据库,所以当我上传照片时,它被命名为“image1.jpg”,然后如果我上传另一个图像,它被命名为“image2.jpg”等等。好吧,如果我删除 image1,那么 image2 会自动重命名为 image1.jpg,如果还有更多,它们都会重新命名。

问题是,除非我清除缓存,否则现在新的 image1 正在显示旧图像。我找到了一个迷你解决方案来解决这个问题:

$rand = rand(100,1000);
<img src="images/image1.jpg?<?=$rand;?>">

效果很好,但我发现它不适用于 facebox,每当我尝试在 Facebox 中查看全尺寸图像时,它无法读取带有随机数的 URL,它只会显示大量字符这通常会使我的浏览器崩溃。

有没有更好的方法来解决这个问题?

【问题讨论】:

  • 为什么不保留删除图像时的图像名称?似乎没有必要仅仅因为您删除了图像而重命名。
  • 这就是我在显示图像时调用图像的方式,我只是使用 for 循环并计算 FTP 中有多少张照片,然后轻松显示它们。如果需要,我可以更改照片库的编码方式,我只是想看看是否有这种方法的解决方案!
  • 看看@Jacob 写的关于无缓存标头的内容。这就是您想要采取的方法。

标签: php image caching facebox uploader


【解决方案1】:

您不能在图像目录中放置缓存头。

【讨论】:

  • 谢谢雅各布。抱歉这个愚蠢的问题,但我到底该怎么做?我有以下无缓存代码:
  • 抱歉,这里的格式不正确。我只是把那个sn-p放在画廊页面的顶部吗?图片目录是什么意思?
  • 包含图像的目录应该得到一个无缓存过滤器。这应该在服务器上完成,而不是通过 php。 Here's an example of how to do that
  • @drew:我以牺牲我的个人资料积分为代价向你投了赞成票。我相信你不了解主题不是你的错。如果每个人都希望每个人都提出他们已经知道的问题,那么拥有这个网站有什么意义呢?
猜你喜欢
  • 2017-12-26
  • 1970-01-01
  • 2021-03-27
  • 2013-11-08
  • 2013-06-22
  • 1970-01-01
  • 2013-05-26
  • 2013-03-19
相关资源
最近更新 更多