Webページにアクセスするということ
アクセス解析とWebへのアクセスの関係を紹介するにあたって、まずはWebへのアクセスの技術的なしくみを紹介しておかなければなりません。
Webページへのアクセスとは、ブラウザがWebサイトにアクセスしてHTMLや画像など、Webページを構成するデータをダウンロードすることです。そしてこの作業は、「HTTP(Hyper Text Transfer Protocol)」(注3)という決められたルールに基づいて行われます。
Webページへのアクセスにおいて、やり取りを行うのは「クライアント」と「サーバ」です。クライアントと聞くと「依頼人」や「取引先」を思い浮かべるかもしれませんが、Webページへのアクセスでは、ページにアクセスしようとしている利用者のパソコン(やブラウザなどの実際にアクセスを行うソフトウェア)を指します。そしてサーバは、Webページのデータを保持しているコンピュータや、そのコンピュータ上で動いているクライアントからの要求に対してデータを送信するソフトウェアのことです。
HTTPによるWebページへのアクセスでは、クライアントがサーバに対して行う「このページにアクセスしたいです」という内容のリクエスト(要求)と、それに対するサーバのレスポンス(応答)という一対の行き来で構成されています(図2)。

HTTPでは、リクエストの際にクライアントはどういうデータをどういう順番で送信すればいいのか、それに対してサーバが送り返してきたデータはどんな構造になっているのか、といったことが決められています。リクエストには、実際にアクセスしたいページのアドレスなどの情報が含まれていますし、それに対するサーバ側のレスポンスには、指定されたページの文章や画像などのデータ、もしくは正しくページにアクセスできなかった場合にはエラーの情報などが含まれることになります。
すなわち、ルールをきちんと決めておくことで、ブラウザさえ立ち上げれば、世界中のどんなサイトにでも同じようにアクセスし、その内容を閲覧できるようになっているのです。
アクセス解析に利用される情報の本来の目的
さてアクセス解析によって知ることができる情報の中には、アクセスに利用されたブラウザの名前や、OS、アクセスしてきた人が利用している言語、リンク元や検索エンジンからのアクセスの場合には検索に用いられたキーワードなどがあります。
こうしたさまざまな情報を知ることができるのは、アクセス解析の面白い点であり、マーケティング的にも価値のあるものです。そしてこうした情報を記録、解析できるのは、サーバへのリクエストの際に、クライアントがそれらの情報を送ってくるからです(図3)。

しかし実はこれらの情報は、クライアントからのリクエストの際に、必ず送られてくる情報ではありません。HTTPの仕様では、リクエストの際に必ず送らなければならない情報は、アクセスしたいページがどこかという情報だけで、それ以外のブラウザ名やリンク元などの情報は「省略可能」という位置づけになっています。
そのため、Webサイトへのアクセスの中には、これらの情報が含まれていないケースも存在しており、そうしたアクセスを解析しても、「リンク元」や「ブラウザ名」の結果はどうしても「不明」になってしまいます。また、これらの情報はあくまでクライアント側が送ってくる情報をそのまま記録しているに過ぎないので、意図的にうその情報を送ることも可能になっています。
たとえば、本当はぜんぜん違うブラウザを使っているのに、アクセス時には「自分はInternet Explorerである」と名乗ることも可能ですし、うそのリンク元情報を送ることすら可能なのです。セキュリティソフトの中には、「個人情報の保護」を目的として、Webページにアクセスした際の情報から、こうした任意の情報を削除して、サーバに教えないようにするものも存在しています。
とはいっても正しく情報を送ってくるクライアントのほうが圧倒的に多いので、ブラウザやリンク元などの解析が「無意味である」というわけではありません。アクセス解析はあくまで統計的な解析なので、ある程度正しいアクセスがあれば、集計結果は信頼に足るものになるでしょう。ここで言いたいのは、ブラウザやリンク元などの解析は、アクセスすべてを完璧に把握できるものではない、ということです。
アクセス解析ツールはみな、少しでも精度の高い情報を得るために、さまざまな努力しています。今後の連載の中で、どのような努力を行っているのか、といったことも紹介していきたいと思いますが、その前提として、ここまで述べたように解析に利用する多くの情報が「任意の」情報であるということを覚えておいてください。
さて、これらの任意の情報を送るルールがHTTPに含まれ、そして多くのブラウザがそのルールを守っているのは、決してアクセス解析のためではありません。これらの情報を送るのは、ブラウザがサーバに対して、その情報を利用して、より自分に適した情報を送ってくれることを期待しているからです。たとえば世の中にはいくつものブラウザソフトウェアが存在しています。
マイクロソフト社のInternetExplorerがもっともメジャーではありますが、そのほかにもFirefoxやOpera、Mac OS Xに搭載されているSafariをはじめ、もっとシェアの少ないブラウザもたくさんあります。そしてそれぞれのブラウザは、その内部のしくみが微妙に違ったり、固有のバグなどがあるために、おなじWebページにアクセスした際にも、表示のされ方が異なってきてしまう場合があります。
そうした場合に、サーバにブラウザの名前の情報を送信することで、サーバ側がそのブラウザに適した情報を送ってくれるかもしれないことを期待しているのです。実際にサーバ側でブラウザ名の情報をチェックして送信するデータを切り替えることは行われています。
また、ブラウザは利用者がどんな言語を読むことができるか、という情報を送信することもできます。たとえば日本語版のブラウザなら「日本語」という情報が、フランス語版のブラウザなら「フランス語」という情報を送ることができるのです。この情報も、アクセス解析で利用することが可能ですが、本来の目的は、アクセスしたサイトに、内容をその言語で表示してくれることを期待しているのです。
そしてそうした言語による振り分けを行っているサイトも実際に存在します。たとえば有名なところでは検索エンジンのGoogleがそうです。Googleでは、アクセスした際にブラウザが送ってきた言語情報を元に、表示する言語を切り替えたり、各国のGoogleサイトに転送する、といったことを行っています(図4)。

アクセス解析では、こうした本来はブラウザが自分自身のために送信してくる情報を利用させてもらっているに過ぎないのです。