CDN 缓存图像重定向和永久链接


CDN Caching Image Redirects and Permalinks

我们的PHP/MVC网络应用程序允许用户上传图片。他们获得每个图像的链接,例如:http://example.com/images/55其中 55 是我们存储在数据库中的 id,以便我们可以将用户与他们的图片相关联。我们不会将图像数据存储在数据库中,而是存储在 Amazon S3 上。

当用户稍后请求此 URL 时,我们的服务器会生成实际的 URL,并发出header('Location: https://s3.amazonaws.com/example/media/1234')重定向到 1234 ID 为 55 混淆的浏览器。我们设置了这个方案,以便在后端发生变化时我们可以有一个"永久链接"解决方案 - 原始 URL 只是在幕后重新映射。

使用这种方案,是否可以让客户端浏览器缓存整个过程?例如,请求http://example.com/images/55将避免完全访问我们的服务器,并直接请求https://s3.amazonaws.com/example/media/1234,甚至更好的是,直接从缓存中检索此图像。如果没有,构建链接/重定向方案的"最佳"方法是什么?我们将生成具有大量缩略图的页面,我希望这些缩略图被缓存,以便用户体验流畅。

根据我的经验,您的请求正是发生的事情。浏览器,就我而言,Mac 上的 Safari 5 点击脚本 URL,重定向到 CDN 并将图像缓存在原始脚本 URL 下......

我注意到这一点是因为我需要相反的东西。同样的情况,但就我而言,用户想要更改他们的图片。上传进行正常,但浏览器继续显示旧图像...(在你继续你的道路之前考虑这一点)