web-dev-qa-db-ja.com

静的コンテンツのリクエストが別のサイトに送信されるのはなぜですか?

Stackoverflowまたは一部のサイトにログインするたびに、http://cdn.sstatic.net/のようなサイトへのリクエストがたくさん表示されます。実際のサイトから直接配信するのではなく、なぜこれを行うのですか?それはウェブサイトをスピードアップするのにどのように役立ちますか?

13
Santosh Linkha

恥知らずな盗難:

コンポーネントにCookieのないドメインを使用

ブラウザーが静的画像を要求し、その要求と共にCookieを送信すると、サーバーはそれらのCookieを使用できなくなります。したがって、正当な理由なくネットワークトラフィックを作成するだけです。静的コンポーネントがcookie-freeリクエストでリクエストされていることを確認する必要があります。サブドメインを作成し、そこですべての静的コンポーネントをホストします。ドメインがwww.example.orgの場合、static.example.orgで静的コンポーネントをホストできます。ただし、www.example.orgではなく、トップレベルドメインexample.orgにすでにCookieを設定している場合は、static.example.orgへのすべてのリクエストにそれらのCookieが含まれます。この場合、まったく新しいドメインを購入し、そこで静的コンポーネントをホストし、このドメインをCookieなしで維持できます。 Yahoo! yimg.com、YouTubeはytimg.com、Amazonはimages-Amazon.comなどを使用しています。

Cookieのないドメインで静的コンポーネントをホストするもう1つの利点は、一部のプロキシが、Cookieで要求されたコンポーネントのキャッシュを拒否する可能性があることです。関連するメモとして、ホームページにexample.orgとwww.example.orgのどちらを使用するべきか疑問に思う場合は、Cookieの影響を考慮してください。 wwwを省略すると、*。example.orgにcookieを書き込む以外に選択肢がないため、パフォーマンス上の理由から、wwwサブドメインを使用してcookieをそのサブドメインに書き込むのが最善です。

12
Matthew Read

これが2009年8月にスタックオーバーフローに追加されたとき、ジェフは予想通り、 _SOブログ にすべてについて書きました。あなたが読み続けるなら、それについても後でもっと議論があります。

基本的に、それはすべてCookieトラフィックを削減することです。

6
Tony Meyer

Cookieは、リクエストごとに、Cookieが保存されているドメインに送信されます。 Cookieを使用せずにドメインを設定すると、リクエストのサイズが小さくなり、リクエストの速度が速くなるため、静的コンテンツに役立ちます。

4
dan_waterworth