画像をリクエストする際、ブラウザと画像が表示されているウェブページとの間でデータのやり取りが始まります。このリクエストヘッダーにおける重要な要素の2つが、ユーザーエージェントとリファラー情報です。
ユーザーエージェントとは?
ブラウザやデバイスがリクエストを送信するとき、テキスト文字列としてユーザーエージェントが送信されます。ユーザーエージェントは、アプリケーション、オペレーティングシステム、デバイスの種類を識別するのに役立ちます。この情報をもとに、ウェブサイトはプラットフォームに最適化されたコンテンツを提供できます。
ユーザーエージェントの例:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36
このユーザーエージェントは以下の情報を示しています:
ブラウザ: Chrome 93
オペレーティングシステム: Windows 10, 64-bit
レンダリングエンジン: AppleWebKit (ChromeとSafariで使用されている)
ユーザーエージェントの重要性
ユーザーエージェントはコンテンツの最適化、分析、セキュリティにおいて重要です。imgixでは、アセットへのリクエストが行われた際にユーザーエージェントを記録します。この情報を分析することで、トラフィックの発生源(デスクトップ対モバイル)を理解できます。また、ユーザーエージェント情報を使用して、ボットやプログラムによる不正な活動を特定することも可能です。
リファラーとは?
リファラーは、ユーザーエージェントと同様にHTTPヘッダリクエストに含まれて送信されます。このリクエストは、元のURLを示し、ウェブサイトがどこからトラフィックが発生しているかを理解するのに役立ちます。
例えば、[www.imgix.com]へのリンクを[www.google.com]からクリックした場合、以下のヘッダーがリクエストに含まれます:
リファラー: https://www.google.com
リファラーの重要性
リファラーは、分析、SEO、およびセキュリティにおいて重要です。imgixでは、画像へのリクエストが送信された際、どのページからリクエストされたかを理解することができます。この情報は、トラフィックの発生源やマーケティングキャンペーンの効果を測定するのに役立ちます。場合によっては、画像が意図しない場所で使用されていることを発見することもできます。
なぜリファラーやユーザーエージェント情報が空になるのか?
imgixは画像リクエストの分析やレポートを提供しますが、これらのリクエストにはリファラーやユーザーエージェント情報が空になることがあります。これは、ウェブ開発者が意図的に行った場合や、セキュリティ上の問題が原因で発生することがあります。時折、画像がリクエストされる際にリファラー情報が含まれないことがあります。これは、プライバシー設定やブラウザの設定が影響していることがあり、これらの設定は、ウェブサイトがリクエスト元を把握するのを制限することが目的です。
例えば、ある設定では、安全な(HTTPS)サイトから安全でない(HTTP)サイトへ移動する場合、リファラー情報の送信が停止されたり、同じドメイン内でのみリファラー情報が送信されたりします。“noreferer” という値の例では、リクエストにはリファラー情報が含まれないことを意味します。これらの設定は、ウェブサイトが異なるページやサイト間でユーザーの活動を追跡するのを防ぎ、プライバシーを保護するために設けられています。
プライベートブラウジングやインコグニートモードでは、ブラウザがリファラー情報を非表示にして、ユーザーの閲覧履歴をプライベートに保ち、異なるセッション間でどこから画像リクエストが発生したかを追跡できないようにする場合があります。
ユーザーエージェントヘッダーがブラウザやプライバシー重視の拡張機能によってブロックされる場合もあります。これは、画像リクエストに使用されるデバイスやブラウザの詳細をウェブサイトが収集できないようにするためであり、これによりウェブサイトがユーザーを特定したり追跡したりするのを防ぎ、プライバシーを保護します。
また、データスクレイピングや自動化テストなどのために画像リクエストを行う自動化ツールやボットは、ユーザーエージェントを含まないことがあります。これらのツールは、ボットやリクエストを行っているデバイスのアイデンティティを明かす必要がなく、リクエストが匿名で行われることがあります。