問題タブ [etag]
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.
http - ETag または Last-Modified HTTP ヘッダーのどちらが優先されますか?
後続の 2 つのリクエストで、次の 2 つのヘッダーのどちらが変更された場合にブラウザーによってより重要視されますか: ETag または Last-Modified?
ruby-on-rails - Rails - etag とページ キャッシング (ファイル キャッシュ)
etags/stale?/fresh_when を使用する利点は何ですか? ページ キャッシングの代わりに (ファイル キャッシュ上で)?
Apache は静的ファイルの etag を自動的に処理しますが、そうでない場合でも、Rails アプリが呼び出されることさえないため、ページ キャッシュの方が優れています。
では、Rails が提供するメソッド (stale?/fresh_when?) をどのような場合に使用しますか?
apache - .htaccess が機能しない - 画像のみをキャッシュし、JS や CSS はキャッシュしない
複製:
画像の 304 HTTP コード (キャッシュされたコンテンツ) しか受信していないことに気付きましたが、JavaScript や CSS は受信していません。
私の .htaccess ファイルは次のとおりです。
JavaScript や CSS ではなく、画像のみがキャッシュされる理由を知っている人はいますか?
apache - javascript と css がキャッシュされないのはなぜですか?
javascript と css のみがキャッシュされていないように見えますが、画像はキャッシュされています。
Firebug を使用していますが、ページを更新すると、Firebugで js/cssに対する 200 の HTTP 応答が多数あることに気付きますが、すべての画像に対して304 HTTP コード(コンテンツは変更されていません) を受信しています。したがって、私の JS と CSS はキャッシュされていないようです。
また、YSlow を使用して JS/CSS コンテンツがキャッシュされない問題を特定すると、次のように通知されます。
ETag が正しく構成されていないコンポーネントが 4 つあります
以下にリストされているのは私の .htaccess ファイルです
.htaccess アクセス ファイルが CSS や JavaScript のキャッシュを妨げている原因について何か考えはありますか?
iis-6 - メタベース IIS6 から etag サフィックス (変更番号) をプログラムで削除する
IIS 6.0 は、"hash:changenumber" の形式で eTag 値を生成します。変更番号は IIS がリセットされるたびに増加するため、eTag は IIS プロセスの存続期間中のみ有効です。再起動、番号が上がり、hash:changenumber != hash:changenumber+1.
これを修正するには、 changenumber をハードコーディングします。これは、メタベースを編集するための .NET ユーティリティである Metabase Explorer を使用するか、IIS サービスが停止しているときに XML ファイルを編集することで可能です。
ADSI または WMI のいずれかを使用して他のすべてのメタベース プロパティを設定できるように、サーバーを実行してプログラムでこれを行いたいと考えています。これについては、プロパティ (MD_ETAG_CHANGENUMBER として内部的にのみ参照される) が一致するプロパティ名を持っていないように見えるため、可能ではないようです。
VBScript の問題の例を次に示します。
出力:
この値を C# で設定できるようにしたいと考えています。IIS を停止し、XML で値を設定して、再度開始する以外に、この値をプログラムで設定する方法はありますか?
私の最善の考えは、Metabase Explorer に付属の IISMbLib.dll を (ab) 使用することです。したがって、これを使用した経験のある方がいらっしゃいましたら、ぜひお聞かせください。
参考文献:
asp.net-mvc - ASP.NET MVCでETagをサポートするにはどうすればよいですか?
ASP.NET MVCでETagをサポートするにはどうすればよいですか?
iis - iis 7 はどのように etags を生成しますか
iis 7 が etags を生成するために使用するメソッド/アルゴリズムは何ですか。「日付にチェックサムを使用する」ではなく、正確なものを探しています
これには多くの疑問が残ります。チェックサムのアルゴリズム、日付、日付の形式 (short、utc、'mm-dd-yyyy ttad'、'MMDDDYYY' など)
前もって感謝します。私はネットを精査しましたが、この答えが見つかりません。
ruby-on-rails - Railsのようにasp.net MVCでスマートクライアントキャッシングにeTagを使用できますか?
このスクリーンキャスト ¹で、Ruby in Rails で、eTag を埋めるための REST + モデルを考慮して、より優れたクライアント キャッシング ² を実行できることがわかりました。すべての http 本文をレンダリングしてから、通常どおり eTag を計算するよりもはるかにスマートです。
このプロパティは、GET を使用する場合にクライアント キャッシングをよりモデル指向にすることができるため、これはパフォーマンスに優れていると思います。
誰かがasp.net MVCでこれを作っているところを見たことがありません。この人が Rails でやっているのを見たのと同じくらい簡単でしょうか?
apache - (Apache)iノードをETagに入れる目的は何ですか?
ETagにApacheのデフォルトのinode-mtime-size形式を使用したくない理由を詳しく説明している記事がWeb上にたくさんあります。
しかし、そもそもApacheにiノードを含める動機となった可能性のあるものについてはまだ何も読んでいません。一見すると、同じリソースのオクテットごとのファクシミリを区別できる必要がある場合にのみ有用であるように見えますが、これは確かにETagの目的そのものに反しています。
Apacheの作者は、インターネット標準の扱いがずさんなことで知られていないので、何かが足りないのではないかと思います。誰でも詳しく説明できますか?
編集:私はWebサーバーを管理するのではなく実装しているので、ServerFault.comではなくここでこれを尋ねます。なぜそれが悪い考えであるかについてもっと読むために、例えばここかここを見てください。そのような記事はすべて同じことを推奨しています:etagからiノードを削除します。問題は、彼らがそこにいることに何か利点があるのかということです。