web-dev-qa-db-ja.com

Apache 2.4およびChrome 7.1のPHPのクロスサイトGoogle Analytics Cookie `SameSite = None`警告を解決するにはどうすればよいですか?

クライアントのウェブサイトで、ChromeでこれらのSameSite Cookie警告が表示されます。私はあちこちを検索しましたが、警告が出なくなります。 Cookieは、WordpressサイトでのGoogle広告コンバージョントラッキングが原因です。このサイトは、互換性の理由から、PHP 7.1を実行するDreamHostがホストするApache/2.4.7(Ubuntu)上にあります。私の.htaccessファイルに、私は追加しようとしました:

Header always edit Set-Cookie (.*) "$1; SameSite=None"

そして私は試しました

Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure

...そして私は試しました

Header always edit Set-Cookie (.*) "$1; SameSite=None;Secure"

sameSite = Laxを含む他の多くの組み合わせと同様に

PHP 7.2以下を推奨するガイド:

header('Set-Cookie: cross-site-cookie=bar; SameSite=None; Secure');

しかし、それは私に500 Internal Server Erorrを与えます。

それでも、次の3つのエラーが発生します。

のクロスサイトリソースに関連付けられたCookieが、SameSite属性なしで設定されました。 Chromeの今後のリリースでは、SameSite=NoneおよびSecureが設定されている場合にのみ、クロスサイトリクエストでCookieを配信します。デベロッパーツールの[アプリケーション]> [ストレージ]> [Cookie]でCookieを確認し、とで詳細を確認できます。

(インデックス):1 http://doubleclick.net/ のリソースに関連付けられたCookieがSameSite=Noneで設定されましたが、Secureで設定されていません。 Chromeの将来のリリースでは、Secureもマークされている場合にのみ、SameSite=NoneがマークされているCookieが配信されます。開発者ツールの[アプリケーション]> [ストレージ]> [Cookie]でCookieを確認し、 https://www.chromestatus.com/feature/5633521622188032 で詳細を確認できます。

(インデックス):1 http://google.com/ のリソースに関連付けられたCookieは、SameSite=Noneを使用して設定されましたが、Secureは使用されていません。 Chromeの今後のリリースでは、Secureとマークされている場合にのみ、SameSite=NoneとマークされたCookieが配信されます。開発者ツールの[アプリケーション]> [ストレージ]> [Cookie]でCookieを確認し、詳細を https://www.chromestatus.com/feature/5633521622188032 で確認できます。

私の調査では、警告に関する情報が限られているようです。利用可能なガイドでは、名前でCookieを識別する必要があるかどうか、またはCookie /ヘッダーをソースで修正する方法を確認する必要があります。

14
Benson

私はGoogleから返事を受け取りましたChrome Labs githubページに同様の質問を投稿した後

警告をトリガーするCookieはgoogle.comから送信されるため、変更することはできません。広告チームはこれらの問題を認識しており、2020年2月の安定日の前にCookieの修正に取り組んでいます。また、指定するヘッダーディレクティブがgoogle.comのCookieに影響を与えることはなく、サイトに設定されたCookieのみを対象とします。

制御するドメインを具体的にリストするCookie警告がある場合は、正しい属性を追加する必要があります。 - rowan-m

10
Benson

トラッカースクリプトを確認します。 gtag.js docsのクロスドメイントラフィックに関するセクションを次に示します。ドメインのみが存在し、www、httpなどが存在しないことを確認してください。

gtag('set', 'linker', {
  'domains': ['example.com', 'example-b.com']
});
1
Ususipse

以下を試しましたか?

Header Set Access-Control-Allow-Origin "*"
Header Set Access-Control-Allow-Credentials: true
Header set Set-Cookie: "ACookieAvailableCrossSite; SameSite=None; Secure"

コンソールの警告は、何かが必ずしも壊れているという意味ではありません。サイトは期待どおりに機能し続けます。

このリンクがお役に立てば幸いです。 Samesite-cookies-ByDefault

0
Krishnan