次のような CSS および JS ファイル名を持つサイトに出くわしました。
css_pbm0lsQQJ7A7WCCIMgxLho6mI_kBNgznNUWmTWcnfoE.css
これを引き起こしているのは何ですか、またはなぜそうするのですか?
編集:以下の各回答の一部はこのシナリオに当てはまる可能性がありますが、これを見つけたサイトを考えると、サービス提供/キャッシュ方法が最も正確なようです.
次のような CSS および JS ファイル名を持つサイトに出くわしました。
css_pbm0lsQQJ7A7WCCIMgxLho6mI_kBNgznNUWmTWcnfoE.css
これを引き起こしているのは何ですか、またはなぜそうするのですか?
編集:以下の各回答の一部はこのシナリオに当てはまる可能性がありますが、これを見つけたサイトを考えると、サービス提供/キャッシュ方法が最も正確なようです.
バージョニングと、静的リソースの正しいバージョンが提供されていることの確認。トラフィックの多い Web サイトがあり、多くのユーザーにサービスを提供している場合、CDN、ファイルのヘッダーのキャッシュなど、複数のキャッシュ層が存在します。
同じファイル名のキャッシュを無効にするのが難しい場合があります。サーバーは正しいヘッダーを渡す可能性がありますが、クライアントはそれらを無視し、キャッシュされたバージョンをロードする可能性があります。異なるファイル名を提供することで、それを防ぎ、正しいバージョンの css/js およびその他の静的リソースを確保できます。
おそらくおわかりのように、その名前を思いついたのは人間ではありません。
通常、これは複数の CSS ファイルを 1 つのファイルに結合した結果です。これは、パフォーマンス上の理由から行われます (1 つのファイルを要求する方が、2 つのファイルを要求するよりも高速です)。
この名前は、入力に対する決定論的アルゴリズム (つまりhash )の結果である可能性が高く、組み合わせを再度実行しても CSS を変更していない場合、出力には同じ名前が付けられます。
コンテンツ(CSS)が変わると、出力ファイルの名前が変わります。これは、ブラウザーが古いバージョンをキャッシュできなくなるため便利です。
ファイルは縮小のためにサーバー側で生成されたようです。
あなたが訪問している Web サイトには、複数の CSS ファイル (@import
ステートメントと結合されている可能性があります) と JS ファイル (jQuery、jQuery UI、jQuery プラグイン、いくつかのカスタム コードなど) が含まれている可能性があります。彼らのためにそれを行うかもしれません (たとえば、ASP.NET 4.5 はこれを行います)。この場合、任意の(ランダム?GUIDベース?)ファイル名を使用して、何かと競合しないようにします。
ウェブサイトで使用されている技術かもしれません。
つまり、gwt (javscript でコンパイルされた Java) や、コードを前処理して javascript を出力するものを使用すると、変なファイル名になる可能性があります。