Microsoft Edgeでリファラが取得できない理由は?原因と解決策について解説してみた

リファラの取得方法を動画で解説しています。
  • Microsoft Edgeの仕様変更が、v94にてありました。
  • Microsoft Edge(というか他のどのブラウザでも)リファラーの情報をプライベートにする動きがあり、リファラーがドメインのトップしか表示されなくなりました。
  • ブラウザの規定値ではstrict-origin-when-cross-originになっているので、ドメインまでしか送りません。明示的にheaderにno-referrer-when-downgradeを記述することで、リファラを取得できるようになります。

リファラーの問題

  • 今までは、フルパス(https://example.com/articles/helllo)でリファラーが取れました。
  • 一方で、最近はルートパスしかとれなくなりました。(https://example.com )

原因

Referrer Policy: Default to strict-origin-when-cross-origin

This change is happening in the Chromium project, on which Microsoft Edge is based. For more information, including the planned timeline by Google for this change, see the Chrome Platform Status entry.

この変更は、Microsoft Edgeの基となるChromiumプロジェクトにて行われています。この変更についてのGoogleの計画的なタイムラインを含む詳細情報については、Chromeプラットフォームステータスのエントリをご覧ください。

Site compatibility-impacting changes coming to Microsoft Edge

理由

  • セキュリティの向上

具体的な対応方法

  • リファラーの設定をしないと、デフォで、strict-origin-when-cross-origin になってしまう
  • headに以下のタグを追加することで明示的にリファラーを出してもらうようにする

<meta name="referrer" content="no-referrer-when-downgrade">

詳しくは、下記記事をご覧ください。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です