エンジニアのakiyanです。
2014年8月7日にGoogleが「HTTPS をランキング シグナルに使用します」と発表しました。SSLで配信されているページを検索順位的に優遇する宣言です。
https から始まるURLのページでは、httpとの挙動の違いのひとつとして https から http へ遷移した際に、リファラが送出されません。
リファラは主に送られてきたものを集計して解析するものですが、メディア的なサイトでは影響度を伝えるために「きちんと送っておく」ものでもあります。遷移の方法によっては正しく送出されなかったりするので、実装上気をかけたりします。
さて、https から http では、何もしなければリファラは送出されませんが、meta referrer タグでリファラの送出をコントロールすることができます。
1 |
<meta name="referrer" content="origin" /> |
contentには4タイプあります。
- origin
- ドメインのみ
- always
- URL全体
- never
- 送らない
- default
- デフォルトの挙動
https のページでも origin か always を指定すれば、リファラが送出されます。http のページでも動作するので、origin ならリファラはドメインのみになり、never なら送出されなくなるので、あえてURL全体を送りたくない場合などに利用できます。
この meta referrer は、まだ主要なブラウザ全てではサポートされていません。最近の対応表をネット上で見つけられなかったので、PCとスマホブラウザのサポート状況を調べて表にしました。(リンク先で拡大)
最新のChrome、Safariは対応しています。IEとFirefox、Android 2.3.3 の標準ブラウザは非対応でした。Firefoxでは実装の動きがあるようです。IEへの実装の動きは見つけられませんでした。
サイト全体を SSL に変更するのはかなり手間がかかりますし、ガラケーサイトでは契約者ID(guid=ON等)を受け取ることができなくなったりと、様々な障害があります。その上リファラが送られなくなったりするので、慎重な対応が求められますね。