Rails 3 アプリケーションで Thin を介してサーバー化された静的ファイルがあります。これらのファイルへのルートはありません。URL を介して直接参照されているだけです。ただし、ファイルがキャッシュされているようです。Web サーバー (Thin) が原因でキャッシュが発生しているのか、ブラウザー (Chrome) が原因でキャッシュが発生しているのかはわかりません。
Windows で Rails 3 または Thin で静的ファイル キャッシュを無効にする方法はありますか?
Rails 3 アプリケーションで Thin を介してサーバー化された静的ファイルがあります。これらのファイルへのルートはありません。URL を介して直接参照されているだけです。ただし、ファイルがキャッシュされているようです。Web サーバー (Thin) が原因でキャッシュが発生しているのか、ブラウザー (Chrome) が原因でキャッシュが発生しているのかはわかりません。
Windows で Rails 3 または Thin で静的ファイル キャッシュを無効にする方法はありますか?
キャッシュを強制的に使用しないようにするにはconfig.action_controller.perform_caching = false
試して確認するその他のオプション
config.serve_static_assets = false
config.static_cache_control = "public, max-age=0"
config.assets.digest = false
https://devcenter.heroku.com/articles/rack-cache-memcached-static-assets-rails31#serve_static_assets
ブラウザのキャッシュを無効にするには、試すことができます
application_controller.rb..
before_filter :set_cache_buster
def set_cache_buster
response.headers["Cache-Control"] = "no-cache, no-store, max-age=0, must-revalidate"
response.headers["Pragma"] = "no-cache"
response.headers["Expires"] = "Fri, 01 Jan 1990 00:00:00 GMT"
end
クレジットhttps://stackoverflow.com/a/748646/643500
サーバー構成では、次のようにキャッシュ ヘッダーを変更できます。
アパッチの場合:
<LocationMatch "^/assets/.*$">
Header unset ETag
FileETag None
# RFC says only cache for 1 year
ExpiresActive On
ExpiresDefault "access plus 1 year"
</LocationMatch>