Google データポータル(旧 データスタジオ)の基礎から徹底解説!
2020年5月19日
東証スタンダード上場企業のジオコードが運営!
SEOがまるっと解るWebマガジン
更新日:2022年 11月 11日
【監修】株式会社ジオコード SEO事業 責任者
栗原 勇一
2020年、Google Chrome開発チームは、プライバシー向上のためユーザーエージェントを段階的に廃止していく方針を発表しました。
そして2021年9月から、Chrome 95ベータ版からユーザーエージェントの情報削減の運用テストが開始されました。
本記事では、ユーザーエージェントの基礎知識、活用方法、Chromeでユーザーエージェントが廃止される理由などをご紹介します。
最新情報はGoogle Chromeの公式情報をご確認ください。
SEOについて動画で学びたい!という方のために、動画セミナーをご用意しています。
あわせてご覧ください。
▼人気の動画はこちら
目次
ユーザーエージェント(User-Agent) とは、インターネットを閲覧しているユーザーの、デバイス・OS・ブラウザなどの情報を文字列にしたものです。
ユーザーがインターネット上でいろいろなWebサイトを閲覧している時、ブラウザとそれぞれのWebサイトのサーバー間では、「HTTPリクエスト」と「HTTPレスポンス」というデータのやりとりを行っています。
例えば以下のようなやり取りです。
①HTTPリクエスト
ユーザーが使用しているブラウザ「SEMジャーナルのサイトがみたいです!」
↓ ユーザーがWebサーバーにWebページ(URL)の閲覧を要求する
Webサイトのサーバー
②HTTPレスポンス
Webサイトのサーバー「はい、こちらのデータをどうぞ!」
↓ ユーザーからの要求に対してWebページのデータを送信する
ユーザーが使用しているブラウザ
①②のやりとりをすることによって、ユーザーがブラウザ上でWebサイトの閲覧をできるのです。
HTTPリクエストでは「HTTPリクエストヘッダー」と呼ばれる情報がWebサイトのサーバー側に送信されています。
HTTPリクエストヘッダーには、リファラ(Referer)、クッキー(Cookie)、アクセプト(Accept)などの、Webサイトを閲覧するために必要な情報が含まれていて、ユーザーエージェント(User-Agent)もその一つ。
ユーザーエージェントでは、Webサイトのサーバーへユーザーの閲覧環境の情報を送信しています。
情報を受信したWebサイト側は、サイトにアクセスしてきた人が「どのデバイス・OS・ブラウザを使用しているのか」を識別することで、ユーザーの閲覧環境に合わせたWebページを表示させたり、Webサイトのアクセス解析に活用したりしています。
例えば、スマートフォンとパソコンなど、デバイスの大きさに合わせてWebサイトのデザインが見やすく変わるのもこの仕組みを利用しているのです。
実際にユーザーエージェントの文字列を見てみましょう。
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36 |
上記のユーザーエージェントからは、「OSがWindows 10のパソコンでGoogle Chromeのブラウザを使用しWebサイトを閲覧している」という情報が分かります。
なお、ユーザーエージェントはUser-Agentの頭文字をとって「UA(ユーエー)」と表記することもあります。
基本的に、ユーザエージェントには個人を特定するような情報は含まれていません。
しかし、一部携帯電話(ガラケー)においては、製造番号などが含まれる場合があります。
個人情報は含まれていませんが、最近になり、ユーザーのプライバシー保護のために、ユーザーエージェントを廃止する方向で動いています。
詳しくは後述の「プライバシー問題」で解説します。
先ほど実際の文字列をご紹介しましたが、ここではユーザーエージェントがどのような文字列になっているのか、確認していきましょう。
ユーザーエージェントの文字列は、書き方が厳密には決まっていません。
基本的にはMozillaが定めた文字列の仕様に倣っているブラウザが多いようです。
基本的なユーザーエージェントの文字列
User-Agent: <product> / <product-version> <comment> (<system-information>) <platform> (<platform-details>) <extensions> |
<product>…プロダクト情報
<product-version>…プロダクトのバージョン情報
<comment>…サブプロダクト情報などがあれば表示される情報
<system-information>…OSなどのシステム情報
<platform>…プラットフォーム情報
<platform-details>…プラットフォーム詳細情報
<extensions>…その他の情報
では、OSがWindows 10、デバイスがパソコン、ブラウザがGoogle Chromeのケースの文字列で見てみましょう。
<ユーザーエージェント情報>
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36 |
文字列は以下の情報を意味します。
Mozilla/5.0…プロダクト情報
(Windows NT 10.0; Win64; x64) …OS情報
AppleWebKit/537.36 (KHTML, like Gecko)…HTMLレンダリング情報(カッコ内は互換性の情報)
Chrome/94.0.4606.81 Safari/537.36…ブラウザ情報
プロダクト情報の「 Mozilla/<バージョン情報>」はほとんど形骸化している記述で、おおよそのユーザーエージェントで同じように表示されます。
OS情報とブラウザ情報の部分から、Window10でGoogle Chromeのブラウザを使用していることが判別できるでしょう。
デバイスに関しては、一例ですがスマートフォンになった場合は以下のようにデバイス情報が表示されます。
<デバイスがiPhoneだった場合のユーザーエージェント情報の一例>
Mozilla/5.0 (iPhone; CPU iPhone OS 14_8 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/94.0.4606.52 Mobile/15E148 Safari/604.1 |
なお、ユーザーエージェントにはデバイス・OS・ブラウザ情報の他に「HTMLレンダリング」という情報もあります。
HTMLレンダリングは、Webサイトのソースコードデータを解釈し、ディスプレイに表示させる文字や画像などの配置を計算するプログラムのことです。
上記の例では「AppleWebKit/537.36」とありますが、この場合「あなたのWebサイトのソースコードをAppleのWebKitというプログラムを使って読み解きますよ」という内容をWebサイトに送信しているという事になります。
ちなみに、WebKit(ウェブキット)は、Appleが中心となって開発しているオープンソースのHTMLレンダリングエンジン群の総称。
レンダリングのプログラムはWebKitの他にもBlink、EdgeHTML、Geckoなどさまざまあります。
では、次にユーザーエージェントの例文を見ていきましょう。
世の中には、Webサイトを見るための手段がたくさんあります。
デバイスはデスクトップパソコン、スマートフォン、タブレットなどがあり、OSはWindowsやMacなど、そしてブラウザはMicrosoft Edge、Chrome、Firefox、Safariなどさまざま。
ここでは、それぞれがどのようなユーザーエージェントで表示されるのか、一例をご紹介していきます。
OS | user agent |
Windows(PC) | User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36 |
mac(PC) | Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.81 Safari/537.36 |
iPhone | Mozilla/5.0 (iPhone; CPU iPhone OS 14_8 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/94.0.4606.52 Mobile/15E148 Safari/604.1 |
Android | Mozilla/5.0 (Linux; Android 11; Pixel 4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.210 Mobile Safari/537.36 |
OS | user agent |
Windows(PC) | Mozilla/5.0 (Windows NT 6.3; WOW64; rv:41.0) Gecko/20100101 Firefox/41.0 |
mac(PC) | Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:41.0) Gecko/20100101 Firefox/41.0 |
iPhone | Mozilla/5.0 (iPhone; CPU iPhone OS 8_3 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) FxiOS/40.0 Mobile/12F69 Safari/600.1.4 |
Android | Mozilla/5.0 (Android 4.4; Mobile; rv:41.0) Gecko/41.0 Firefox/41.0 |
version | user agent |
Windows(PC) | Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/533.20.25 (KHTML, like Gecko) Version/5.0.4 Safari/533.20.27 |
mac(PC) | Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.0 Safari/605.1.15 |
iPhone | Mozilla/5.0 (iPhone; CPU iPhone OS 9_2 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13C75 Safari/601.1 |
Android | なし |
次に、ユーザーエージェントの確認方法をご紹介していきます。
ユーザーエージェントはHTTPリクエストをWebサイトのサーバー側に送信した時に相手側に送られる情報の一つですが、ユーザーは「ページが読み込まれるのを待っている」状態にすぎないので、ユーザーエージェントを目視することはありません。
自分の閲覧環境を確認するのに簡単でわかりやすい方法は、「ユーザーエージェント 確認」などで検索していただき、ユーザーエージェントをチェックできるWebサイトを活用することでしょう。
別の手段としては、Chromeのブラウザで確認する方法もあります。
①F12を押してデベロッパーツールを開く
※ここに作業画像いれてください※
②「console」のタブをクリックしてパネルを開き、「>」のカーソルの後に「const ua = navigator.userAgent;」と記述してEnter
※ここに作業画像いれてください※
③続けて「ua」と入力しEnter
※ここに作業画像いれてください※
ユーザエージェントはWebサイトの運用者にとって、デバイスごとのページの出し分けやアクセス解析などに非常に有効な手段となりますが、全てが正しい情報とは限りません。
ユーザーエージェントはあくまでユーザーからのHTTPリクエストによる「自己申告」の情報になります。
例えばパソコンからの閲覧時に「スマートフォンから閲覧している」と偽装してWebサイトを閲覧するなど、任意でユーザーエージェントの情報を変えることができるのです。
一般的な利用をするユーザーは意図的にユーザーエージェントを変えることはほとんどありませんが、正確な情報ではない可能性があることも留意しておきましょう。
次に、Webサイト運用者がユーザーエージェントを利用するシーンをいくつかご紹介します。
例えばWebサイトの表示方法をデバイスごとに出し分ける手法を実装する際に、ユーザーエージェントを分岐条件として使用します。
ユーザーエージェントにはパソコンであれば「Windows」「mac」などのOS情報があり、スマートフォンであれば「Iphone」「Android」などのデバイス情報が含まれていますので、これらの情報を分岐条件に、例えば「スマートフォンからアクセスしてきたユーザーには、スマートフォン向けのデザインのページを表示する」というような事ができるのです。
もう一つの活用方法として、どのブラウザや端末からアクセスされているか、アクセス解析をしたい場合が挙げられるでしょう。
例えば、Webサイトにアクセスしているユーザーのほとんどがスマートフォンからのアクセスであれば、スマートフォン向けのデザインを重視してWebサイトを更新していくのも、運用方針の一つです。
ユーザーエージェントは元々、ユーザーがどんな閲覧環境でWebサイトを見ているのかをチェックすることで、ユーザーごとに最適なWebページを表示させるために開発されました。
またユーザーエージェントなどのHTTPリクエストヘッダーの情報は、本来は不正アクセス時の証拠ログとしても活用できる情報なのです。
しかし最近では、「ブラウザフィンガープリント」と呼ばれる、ユーザーが利用しているブラウザを特定してしまう手法にも使われるようになっています。
「ブラウザフィンガープリント」の手法が使われている例を挙げると、Web広告業界のターゲティング広告などに当てはまるケースがあるでしょう。
ターゲティング広告は、Webサイトにアクセスしたユーザーを認識・追跡し、広告を表示させることができるのです。
こうした「ブラウザフィンガープリント」の手法などは、プライバシー保護の観点で指摘が挙がるようになり、GoogleのChrome開発チームはユーザーエージェントを段階的に廃止していくことを発表したのです。
そして2021年9月、Google ChromeがリリースしたChrome 95では、ユーザーエージェントに含まれる情報のうち、ブラウザのバージョン情報について、以下の対策を導入するためのテストが開始されました。
<対策内容>
・ブラウザのバージョンについて、詳細な値をすべて0に変えることで個人の特定を難しくさせる
例えばブラウザのバージョン情報が「Chrome/94.0.4606.81」のようになっていたのを、「Chrome/94.0.0.0」のようにする
これまで
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/ 95.0.4638.69 Safari/537.36 |
↓
今後
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.0.0 Safari/537.36 |
なお、ユーザーエージェント廃止への動きはChromeに限らず、Firefox、Safariなどのブラウザでも起こる可能性があるでしょう。
個を識別する情報がどの範囲までなのか。その線引きは時代に応じて変わってきています。
ユーザーエージェントもまた、Webサイト運用者にとっては便利な解析情報の一つではありますが、ユーザーにとっては個人情報に近いプライバシー情報となってきています。
Webサイトの運用者は、今後どのような動きがあるのか、Googleの発表などをチェックしていくことが大切です。
「WebマーケティングやSEOは自分でやるのは難しい」とお悩みの方には業者に頼るのも手段です。各地域のSEO業者をまとめた記事も用意してみました。あわせてご覧ください。
もちろん、当社にご相談いただけても嬉しいです!気兼ねなくご連絡ください!