ruby-on-rails - 如何在 Rackspace 云存储上使用carrierwave控制缓存?

标签 ruby-on-rails carrierwave cache-control rackspace-cloud

用户可以在我的网站上上传头像。这可以经常改变安静。我需要一个不会更改的严格 url,因为 url 可以显示在网站的某些缓存部分。
我试图在我的 Rails 应用程序上设置以下雾属性来禁用缓存,但我没有得到任何结果......

config.fog_attributes = {'Cache-Control' => 'max-age=1', 'Expires' => 1.day.ago.httpdate}

现在,当用户上传新头像时,前一个头像可能需要几个小时才能从缓存中消失。

以下是 Rackspace 云存储上的用户头像 url 示例:

https://c28078.ssl.cf3.rackcdn.com/user/1/small_profile_image.jpg



我如何确保更新的头像会立即显示而不会出现任何缓存问题?

最佳答案

如果您有头像模型,则您的 URL 会随着每个新头像上传而更改。您还可以保留特定用户的头像历史记录。 URL 将如下所示:

https://c28078.ssl.cf3.rackcdn.com/avatar/482/small_profile_image.jpg

没有更多的缓存问题。更改头像时用户更新的缓存块。头像网址是唯一的。

关于ruby-on-rails - 如何在 Rackspace 云存储上使用carrierwave控制缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9602304/

相关文章:

javascript - 如何永久禁用 Android 浏览器缓存?

ruby-on-rails - Rails服务对象和错误

ruby-on-rails - 在 Devise 中将重定向更改为 sign_in。即在 "recover pass"形式之后

javascript - 在脚本式的高光效果*之后*如何发生一些事情

ruby-on-rails - CarrierWave如何在给定的URL下存储文件

ruby-on-rails - Carrierwave - 如果未上传图像,则保存 nil

php - 部署后强制刷新缓存

ruby-on-rails - rails : How to make small changes in different views

ruby-on-rails - CarrierWave 导致 json 输出嵌套在照片键上

javascript - 没有版本或哈希的缓存破坏