如何在Rackspace云存储上使用carrierwave控制缓存?

Vin*_*res 5 ruby-on-rails cache-control rackspace-cloud carrierwave

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

config.fog_attributes = {'Cache-Control' => 'max-age=1', 'Expires' => 1.day.ago.httpdate}
Run Code Online (Sandbox Code Playgroud)

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

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

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

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

mat*_*gne 2

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

https://c28078.ssl.cf3.rackcdn.com/avatar/482/small_profile_image.jpg
Run Code Online (Sandbox Code Playgroud)

不再有缓存问题。当您更改头像时,用户的缓存块会更新。头像网址是唯一的。