我有一个rails
应用程序,它仍在静态模式的URL末尾显示cachebusting数字字符串,即使我已将其放入生产环境中。有人可以告诉我我需要设置什么配置选项来防止这种行为......
答案 0 :(得分:4)
该文件无法在日常操作中中断缓存。至少在理论上,允许代理服务器缓存HTTP GET请求(只要参数保持不变)。
相反,这个数字可以让您顺利地将CSS和JavaScript文件从一个版本升级到下一个版本。据我所知,它应该保持在生产模式。这些数字只应在文件的时间戳发生变化时发生变化。
您是否看到使用单个参数完全无法缓存任何HTTP GET请求的公共代理服务器?
答案 1 :(得分:2)
要禁用生产中的?时间戳缓存,请将此添加到config / environments / production.rb
ENV['RAILS_ASSET_ID'] = ''
如果你想深入了解它的作用,请查看ActionPack gem中的asset_tag_helper.rb,第527行(ish)