問題タブ [page-caching]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
194 参照

ruby-on-rails - Railsのpage_cacheが他の誰かのドメインをリンクにアタッチしていますが、どうすればこれを止めることができますか?

私が見ることができる限り、状況が何であるかを徹底的に説明しようと思います。

サイトの特定の部分にページキャッシュを使用するRailsアプリがあります。Google Analyticsを調べてみると、自分のドメインがリファラーであることに気づきました。さらに調査したところ、自分のドメインをリファラーとしてこれらのページの1つにアクセスすると、リンクは別のドメイン名を指していますが、ページは正常に表示されることがわかりました。例えば:

私はdomain.comにいます。domain.com/someones_profileにアクセスし、リンクにカーソルを合わせると、anotherdomain.com / someones_profile/aboutと表示されます。ここで、リンクをクリックすると、anotherdomain.com / someones_profile / aboutに移動しますが、サーバーでアクセスされているのは私のページです(ログで確認されます)。

未使用のドメイン名の1つを取得し、AレコードをサーバーのIPに変更して、これをテストしました。次に、ページキャッシュディレクトリをクリアし、設定したドメインdomain2.com/someones_profileを使用してキャッシュ可能なページにアクセスすると、リンクがdomain2.com/someones_profileとしてキャッシュされました。

うまくいけば、この説明は理にかなっています。私のキャッシュに「侵入」しているドメインは、私が知らない誰かに属しており、その意図は決して悪意のあるものではないようですが、Railsにはこのようなものを回避するための何らかの組み込みメソッドがあるのではないかと思いました。page_cacheリンクに、リファラードメインではなく、特定のドメインを使用するように強制するようなものです。

何か助けていただければ幸いです。自分で何かを書くよりも、組み込みのRailsメソッドを使用したいのですが、怠け者だからではないかもしれません。

0 投票する
1 に答える
173 参照

.net - カスタム IHttpHandler でページ キャッシュを処理できるようにするにはどうすればよいですか?

これは私のコードです:

うまくいきません。どうすればいいのか誰に教えてもらえますか?

0 投票する
2 に答える
2617 参照

ruby-on-rails-3 - Memcachedを使用したページキャッシング

Ruby onRails3アプリでMemcachedを使用しています。アクションとフラグメントキャッシングでうまく機能しますが、ページキャッシングを使用しようとすると、ページはMemcachedではなくファイルシステムに保存されます。ページのキャッシュにもMemcachedを使用するようにRailsに指示するにはどうすればよいですか?

私のdevelopment.rbファイル:

0 投票する
2 に答える
936 参照

ruby - caches_page : すべて

Rails 3 に、呼び出し時にすべてのページを一覧表示せずに、特定のコントローラーのすべてのページをキャッシュするように指示する方法はありますcaches_pageか? 試してみcaches_page :allましたが、うまくいきません。

0 投票する
1 に答える
547 参照

ruby-on-rails - Railsページのキャッシュを有効にすると、httpヘッダーの文字セットが消えます

文字セットをutf-8にする必要がありますが、これはデフォルトのようです。最近、いくつかの静的ページのページ キャッシュを有効にしました。

キャッシュは正常に機能し、対応する about.html および contact.html ページが /public フォルダーに生成されていることがわかります。

少しグーグルで調べた後、キャッシュの前後に wget で http ヘッダーを調べてみました。

初めて:

キャッシュ済み:

その結果、ページは ISO-8859-1 で表示され、文字化けしたテキストが大量に表示されます。この望ましくない結果を防ぐ方法を知っている人はいますか? ありがとうございました。

0 投票する
3 に答える
1782 参照

ruby-on-rails-3 - Rails 3.0を使用して、保存されたHTMLファイルとしてページをレンダリングしますか?

Rails3.0で簡単なWebサイトジェネレーターアプリケーションを構築しています。通常の「表示」アクションと同じように機能するコントローラーでの「公開」アクションが必要ですが、代わりに、ブラウザーに表示するのではなく、ページを「パブリック」ディレクトリにHTMLファイルとして保存します。つまり、HTTP応答を提供する代わりに、Railsレンダリングメカニズムを使用してファイルを作成したいと思います。

これを行うための最良の方法は何ですか?

caches_page :publish単にコントローラーに追加する必要がありますか?

または使用render_to_stringしてFile.new

0 投票する
1 に答える
1798 参照

javascript - javascriptを使用してCookieからユーザーIDにアクセスする方法:Rails、Devise、Page Caching

さまざまなユーザー向けにさまざまな画像ギャラリーがあります。ほとんどの場合、ページ全体がキャッシュされる可能性があります。ただし、次の機能も必要です。

  1. ユーザーがログインして自分のギャラリーにアクセスすると、各画像に重なる「x」削除リンクが表示されます。

  2. ユーザーがログインして他の人のギャラリーにログインしている場合、各画像に「賛成」、「反対」の投票のオーバーレイが表示されます。

  3. ユーザーがログインしていない場合、投票用のオーバーレイが表示されますが、ユーザーをクリックするとログインダイアログがポップアップ表示されます。

私が思いついたアプローチはこれです:

  • サーバー側のerbテンプレートでは、ログインステータスに関係なく、常に投票リンクを生成し、リンクを削除しますが、デフォルトではcssで非表示にします。
  • 次に、ユーザーのログインステータスに応じてjsを使用してそれらを明らかにします。

問題は...キャッシュされたページでのユーザーのログインステータスを判断する最良の方法は何ですか?キャッシュされたページにCookieを使用できますか?

キャッシュされたページに次のようなCookie値をチェックするJavaScriptがあれば、機能しますか?

そのCookieを設定するために特別なものを作成するのは嫌いです...何らかのタイプのDEVISECookieがすでに存在しているはずですよね?どうすればアクセスできますか?

0 投票する
1 に答える
195 参照

caching - HTMLページのキャッシュ

WebサイトのHTMLページをそのままキャッシュ/インデックス付けするメカニズムが必要でした。そのため、そのページに対するリクエストが再度発生した場合は、キャッシュまたはインデックスからそのページをフェッチして送信するだけです。Solrで可能ですか?Solrは、HTML Dom全体ではなく、常にhtmlの表示(テキスト)部分を格納しているように見えるためです。高速パフォーマンスでそれを行うのに役立つ他のオープンソーステクノロジーはありますか?

0 投票する
1 に答える
206 参照

ruby-on-rails - XHRのRailsページキャッシング

cahes_pageRails のメカニズムは Ajax/XHR リクエストをどのように処理しますか?

通常、アクションは に基づいて異なる応答をしrequest.xhr?ますが、パスは同じです。では、Rails は両方のバージョンがキャッシュされるように手配するのでしょうか?

0 投票する
1 に答える
1791 参照

ruby-on-rails - Rails 3.2でのキャッシュミスと開発中のページキャッシング-他に誰か?

Rails 3.2を開発モードで使用して、いくつかの単純なページキャッシュをテストしようとしています。

pages_controller.rb

development.rb

application.rb

この設定をテストすると、通常のようにこれらのアクションを処理しているように見え、ページキャッシュは期待どおりに書き込まれます。ただし、その後のリクエストでは、私が混乱している次の2つのことが報告されています。

  1. キャッシュがないようですが...
  2. その後のリクエストは、コントローラーをロードしたり、クエリを実行したりすることはないようで、キャッシュからDIDロードされたと私は信じています。

最初のリクエストでログが出力し、その後5回リロードすると次のようになります。

キャッシュが欠落していると言う理由を誰かが知っていますか?