[解決済み] Railsでブラウザのページキャッシュを防止する方法
質問
Ubuntu -> Apache -> Phusion Passenger -> Rails 2.3
私のサイトのメイン部分は、あなたのクリックに反応するようになっています。つまり、リンクをクリックすると、その先に移動して、瞬時にページを再生成するのです。
しかし、戻るボタンを押すと、新しいページが表示されません。残念ながら、手動で更新しないと表示されないのです。ブラウザがキャッシュしているようです。ブラウザがページをキャッシュしていないことを確認したいのですが。
別途、私は する は、すべての静的アセットに遠い将来の有効期限を設定したいと思います。
これを解決する最善の方法は何でしょうか?Railsで解決すべきでしょうか?Apacheですか?それともJavascript?
いろいろとありがとうございました。 ジェイソン
残念。どちらの提案も、私が求めている動作を強制するものではありませんでした。
javascriptに答えがあるのでは?レールにタイムスタンプを書き込ませて、その時間が5秒以内かどうかをjavascriptにチェックさせるとか(何でもいい)。もしそうであれば、問題ありませんが、そうでなければ、ページを再読み込みしてください。
これでうまくいくと思いますか?
いつもお世話になっております。
ジェイソン
解決方法は?
やっとこさ、これがわかった -。
http://blog.serendeputy.com/posts/how-to-prevent-browsers-from-caching-a-page-in-rails/
で
application_controller.rb
Rails 5以降。
class ApplicationController < ActionController::Base
before_action :set_cache_headers
private
def set_cache_headers
response.headers["Cache-Control"] = "no-cache, no-store"
response.headers["Pragma"] = "no-cache"
response.headers["Expires"] = "Mon, 01 Jan 1990 00:00:00 GMT"
end
end
Rails 4 およびそれ以前のバージョン。
class ApplicationController < ActionController::Base
before_filter :set_cache_headers
private
def set_cache_headers
response.headers["Cache-Control"] = "no-cache, no-store"
response.headers["Pragma"] = "no-cache"
response.headers["Expires"] = "Mon, 01 Jan 1990 00:00:00 GMT"
end
end
関連
-
[解決済み] AWS S3です。アクセスしようとしているバケットは、指定されたエンドポイントを使用してアドレスされている必要があります。
-
[解決済み] cURLでJSONデータをPOSTするにはどうすればよいですか?
-
[解決済み] Rubyのswitch文の書き方
-
[解決済み] cURL呼び出しによるHTTPリクエストを使用してヘッダーを送信する方法は?
-
[解決済み] Ruby on Railsのマイグレーションでデータベースのカラムの名前を変更するにはどうすればよいですか?
-
[解決済み] Rubyでnilとemptyとblankを理解する方法
-
[解決済み] Ruby on Railsで現在の絶対URLを取得するにはどうすればよいですか?
-
[解決済み] Rails 3.1 を使用して、「ページ固有」の JavaScript コードをどこに置くか?
-
[解決済み】全てのブラウザで、Webページのキャッシュを制御するには?
-
[解決済み】Railsの認証トークンを理解する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】gemのインストールができない - gemネイティブ拡張の構築に失敗 - そのようなファイルをロードできない -- mkmf (LoadError)
-
[解決済み】コレクションをDESCで並べる方法
-
[解決済み】Webpacker::Manifest::MissingEntryError【クローズド
-
[解決済み] Ruby on Railsのランナー
-
[解決済み] RailsのRootディレクトリのパス?
-
[解決済み] AWS S3です。アクセスしようとしているバケットは、指定されたエンドポイントを使用してアドレスされている必要があります。
-
[解決済み] Rubyで変数をインクリメントする [重複]。
-
[解決済み] nil:NilClass の未定義メソッド `each' - しかし、なぜ?
-
[解決済み] RoRにおけるSpringサーバーの機能とは?
-
[解決済み] RubyとRailsの "Date.today "フォーマット