パフォーマンスを向上させるためにCookielessドメインでIISをセットアップするにはどうすればよいですか?
-
12-09-2019 - |
質問
私はGoogleのドキュメントで彼らの新しいドキュメントを読んでいました PagesSpeed プラグイン、彼らが使用することをお勧めします Cookielessドメイン パフォーマンスを改善するため:
画像、JS、CSSファイルなどの静的コンテンツには、これらのリソースとのユーザーのやり取りがないため、Cookieを伴う必要はありません。 Cookieを提供しないドメインから静的リソースを提供することにより、要求の遅延を減らすことができます。
誰かがIISでこれを行う方法を知っていますか?
解決
Googleの記事が示唆しているのは、Cookieが最初にそのサービングドメインによって設定されていない別のドメインからすべての静的コンテンツを提供することです。
Cookieは、セッションCookie(ASPまたはASP.NETリクエストなど)またはアプリケーションによって明示的に2つの方法で設定されています。
これらは、Cookieを設定するドメインの後続のリクエスト(静的コンテンツのリクエストであるかどうかに関係なく)でサーバーに返送され、リクエストのペイロードが増加します。
静的コンテンツ(HTML、CSS、画像など)を提供する2番目のドメインを持っていることであなたがしていることは、そのドメインの最初の場所に初期Cookieが設定されないため、Cookie無料リクエストを作成します。
IISでは、クッキーを追加するのはアプリケーション、ISAPIフィルター、またはISAPI拡張機能です。 IISサーバーが静的コンテンツのリクエストを傍受していない場合(通常、これはカーネルモードhttp.sysドライバーによって処理されるため)、応答にCookieは追加されません。 Cookieが作用するのは、さらにリクエストパイプラインの上にあるだけです。
したがって、基本的には、IISでクッキーレスドメインを明示的に構成する方法はありません。
他のヒント
たとえば、すべての静的リソースをStatic.mysite.comに配置し、そのドメインにCookieを設定しない場合、静的ドメインからリソースを取得するときにブラウザはCookieを送信することはありません。
Googleが言っているのはそれだけです。整理するだけで構成するものは何もありません。
AFAIK Googleアナリティクスは、すべてのサブドメインにCookieを設定しているため、分析を使用している場合は役に立たないでしょうか?
私もこれを経験しました。分析/アドセンスCookieが設定されないようにするには、別のドメインを完全に使用する必要があります。 static.yourdomain.comを使用することはそれをカットしません。
Googleが分析Cookieを変更して、Cookieのないコンテンツを提供するために新しいドメインを購入する必要がないようにすることを期待しています。
AFAIK Googleアナリティクスは、すべてのサブドメインにCookieを設定しているため、分析を使用している場合は役に立たないでしょうか?
これは、Googleアナリティクス非同期追跡コードを使用した例です。追跡のためにドメインを設定する方法: _gaq.push(['_setAccount', 'UA-XXXXXXX-x'],['_setDomainName', 'www.example.com'],['_trackPageview']);
以前のバージョンの追跡コードを使用した例を次に示します。
var pageTracker = _gat._getTracker("UA-XXXXXXX-x"); pageTracker._setDomainName("www.example.com"); pageTracker._trackPageview();
そして、これがこれについてGoogleが言わなければならないことです: Google Analytics&Cookie