ETagの生成
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2013/08/20 13:31 UTC 版)
「HTTP ETag」の記事における「ETagの生成」の解説
ETagの生成はHTTPにおいて必須ではなく、またETagの生成方法については特に規定がない。 一般には、リソースの内容に対して、衝突耐性のあるハッシュ関数を使う、最終更新日時のハッシュを取るなどの手法が取られる。 古いキャッシュを再利用してしまうという問題を起こさないようにするには、ETagの値が一意であること(少なくとも、重複が無視しうる程度であること)を保証する必要があるが、 CRCのような単純なチェックサム関数を使うと、衝突が起こってしまいETagによるキャッシュの判定が正常に行われない危険性がある。 また、サーバの実装によっては、ディスク上のinodeなど、環境依存の値をETagに使うケースも存在する。この場合、Webサーバをクラスターとしている、あるいは複数のサーバを使っていると、1つのサーバから返されたETagが次のリクエストの際に別なサーバで照合すると一致しない、ということとなり、キャッシュの効率性が損なわれる結果となる。
※この「ETagの生成」の解説は、「HTTP ETag」の解説の一部です。
「ETagの生成」を含む「HTTP ETag」の記事については、「HTTP ETag」の概要を参照ください。
- ETagの生成のページへのリンク