2016年08月23日
ユーザーエージェントとは、ブラウザや検索エンジンのクローラーなどがWebページへアクセスする時に送信する、リクエストヘッダに含まれる情報の一つです。 User agentの頭文字をとって「UA」と表記されることもあります。
Windows版のChromeがWebページにアクセスする際に送信しているユーザーエージェントは以下のようなものです。
Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36
(Windowsのバージョン、Chromeのバージョンによって微妙に内容が変わります)
ユーザーエージェントには、ユーザーの利用しているOS情報とそのバージョン番号、ブラウザ情報とバージョン番号などの情報が含まれています。 スマートフォンのブラウザを使っている場合、ユーザーエージェントには端末の種類などの情報も含まれています。
ユーザーエージェントを確認すれば、ユーザーがPCを使ってアクセスしたのか、スマートフォンを使ってアクセスしたのかも分かりますので、スマートフォンでアクセスされた場合にはスマートフォン用ページへリダイレクトするといった処理を行うことができます。
ユーザーエージェントはブラウザのアドオンを使って変更することもできますので、ユーザーエージェントによる処理を行うプログラムをテストする場合に覚えておくと便利です。
目次
ブラウザなどがWebページにアクセスする時、どんな情報が必要なのかをWebサーバーにリクエストします。 これがリクエストヘッダと呼ばれるもので、ユーザーエージェントの他に、どのページからアクセスしたのか分かるリファラ情報や、WebサイトのCookieなども同時に送信しています。
リクエストヘッダに対して、Webサーバーから返される情報をレスポンスヘッダと呼び、Webサーバーが正常にページを返すことができたのか、リクエストしたページが存在しなかったのかを示すステータスコードや、Webサーバーにアクセスした時の日時などが含まれています。
リクエストヘッダ、レスポンスヘッダは、ブラウザの拡張機能を使えば簡単に確認することができます。
下の図は、Chrome機能拡張のHTTP Headersを使ってヘッダ情報を表示しているところです。
Googleがページをクロールする時に使うクローラーも、一般的なブラウザと同じようにユーザーエージェントをWebサーバーに送信します。
Googlebotには、通常の検索用のクローラーやスマートフォン用のクローラーなど、多数のクローラーがあり、それぞれ別のユーザーエージェントを持っています。
Googlebotのユーザーエージェントは、Google クローラ – Search Console ヘルプのページで詳しく書かれています。
Googlebotのユーザーエージェントを検知して、Googlebotがアクセスした場合と一般のブラウザで別のページを表示させることも技術的には可能です。
しかし、Googlebotとブラウザで表示させるコンテンツを変えることは、クローキングと呼ばれるスパム行為に該当する可能性もあり注意が必要です。
クローキング – Search Console ヘルプに、クローキングについて詳しく書かれています。
代表的なOS、ブラウザのユーザーエージェントをご紹介します。 いずれも本記事を執筆した時点での最新バージョンで確認したものです。
Chrome Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36
Firefox Mozilla/5.0 (Windows NT 10.0; rv:48.0) Gecko/20100101 Firefox/48.0
Microsoft Edge Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/13.10586
InternetExplorer Mozilla/5.0 (Windows NT 10.0; Trident/7.0; .NET4.0C; .NET4.0E; .NET CLR 2.0.50727; .NET CLR 3.0.30729; .NET CLR 3.5.30729; SLCC2; Media Center PC 6.0; rv:11.0) like Gecko
Safari Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/601.7.7 (KHTML, like Gecko) Version/9.1.2 Safari/601.7.7
Chrome Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36
Firefox Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:47.0) Gecko/20100101 Firefox/47.0
Safari Mozilla/5.0 (iPhone; CPU iPhone OS 9_2_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13D15 Safari/601.1
Chrome Mozilla/5.0 (Linux; Android 4.2.2; 202K Build/102.0.2d00) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.93 Mobile Safari/537.36
それぞれのユーザーエージェントには、ブラウザ名がユニークで含まれますが、Microsoft Edgeのように別のブラウザ名をユーザーエージェントに含む場合もあります。 ユーザーエージェントの文字列に含まれるブラウザ名を使って処理を分けるときには注意が必要です。
Googleマイビジネスのクチコミ対応方法!悪いクチコミを対策して良いクチコミを増やすには
【連載】コンテンツで被リンクを増やす方法|SEOの基礎力講座 Vol.05
Web & デジタル マーケティング EXPO 出展決定!
検索エンジンとは
どうして!? Twitterのアカウントがロックされてしまう理由と解除方法
迷ったらこうする[漢字/ひらがな編] -「出来る/できる」「事/こと」など
企業向けFacebookページ(ビジネスアカウント)の作成・管理方法
なぜNAVERまとめはサービス終了したのか!?SEO視点で調べてみた
知られざるWordの使い方「スタイル、アウトライン」編