私のドメイン(www.example.comと呼びましょう)はCookieを作成します。別のサイト(たとえば、www.myspace.com)では、私のドメインはiFrame内に読み込まれます。
Internet Explorerを除くすべてのブラウザ(Firefox、Opera、Camino、Safariなど)で、自分のCookieにアクセスできます。 IEでは、iFrame内からCookieにアクセスすることはできません。
これを回避する方法はありますか?
実際、Cookieにアクセスしようとしているサイトはwww.example.comであり、Cookieはwww.example.comによって所有されているため、これは意味がありません。しかし、何らかの理由で、IEは、iFrameによってそれらが無関係になると考えています。
Internet Explorerのデフォルトのプライバシー設定は、サードパーティのCookie(iframe内のCookieなど)がファーストパーティのCookieとは異なる方法で処理されることを意味します。 (デフォルトでは、サードパーティのCookieはサイレントに拒否されます)。
IE6がiframeでCookieを受け入れるには、サイトがP3Pコンパクトヘッダーを配信していることを確認する必要があります。
詳細については、 http://msdn.Microsoft.com/en-us/library/ms537343.aspx を参照してください。
PHPの場合:ヘッダー( "p3p:CP = \" IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"");