それを見ることで、そうしたものにどう対応すればいいのかがわかってきます。ページ遷移がなくても、そのページの中身はユーザーの操作や情報の変化によって書き換わっているわけですから、サーバとのやり取りは発生しています。しかし、通常のページ遷移が「ページを切り替える」という作業によってサーバとのやり取りを行うのに対し、こうしたサービスでは、JavaScriptなどを利用して、ページを移動することなく、サーバとのやり取りを行っているのです。
JavaScriptは以前の記事「JavaScriptを使ったアクセス解析とはなにか」でも解説したとおり、ブラウザ上で動作するプログラム言語であるため、ページが読み込まれたタイミングでなくて、ページを表示している最中の任意のタイミングで実行することができます。例えばマウスで画像やリンクをクリックしたときに、他のページに移動する代わりに、JavaScriptを実行して、ページの内容を書き換えることができます。
この技術は「DHTML」と呼ばれます。「D」は「Dynamic」つまり「動的」という意味です。WebページはHTMLで書かれているわけですが、DHTMLはHTMLをJavaScriptを使って自由に変更することで、その結果、ページの表示内容をいかようにも書き換えることができます。先に紹介したページ遷移の少ないWebアプリケーションでは、このDHTMLという手法を持ちいて、ページの内容を書き換えているのです。
例えばGmailでは、「メールの作成」リンクをクリックすると、ページが切り替わって新規メールの作成画面が表示されますが、この際にもページの遷移は起こっておらず、JavaScriptを使って表示を切り替えていることがわかります。
ページ遷移を利用したサイトと、そうでないサイト
「meebo」の場合はもっと大胆で、ページ内に複数の「ウインドウ」が表示され、それをマウスで動かしたりすることができますが、これらもすべてDHTMLを利用して処理が行われています。DHTMLを利用したページの書き換えは、ブラウザの中で実行されたJavaScriptが行っているため、新たにサーバに情報を問い合わせる必要は、必ずしもありません。しかし、多くのサービスでは、内容を書き換えるために必要なデータをサーバから取得する処理も行っています。そのときに利用される技術の1つがAjaxです。
Ajaxは「Asynchronous JavaScript+XML」の略です。「Asynchronous」は「非同期」という意味で、これはサーバへのアクセスを「非同期で」行うことからきています。この非同期、というのはコンピュータの処理で用いられる用語で、「何かの処理を実行しているとき、プログラムがその処理の終了を待たずに先に進んでしまう」という意味です。この場合は、サーバへのアクセスを行い、データのダウンロードをしているときに、最後までダウンロードされるまえに処理を先に進めてしまうことを言っています。そのおかげで、サーバからデータをダウンロードしている間にブラウザが「固まって」しまうことがなく、利用者にとっても使いやすいものとなります。残るJavaScriptとXMLは、利用されるプログラム言語とデータ形式の名前です(実際にはXML以外のデータ形式を利用する場合もあります)。
と、名前の由来はさておき、Ajaxを利用することで、例えばページ内のどこかをクリックしたとき、どこかの上にマウスカーソルが載ったとき、もしくは何もしなくても定期的に、といったさまざまなタイミングで、ページを移動することなくサーバにアクセスをしてデータをダウンロードし、その内容をもとにページを書き換えることができるのです。したがって、ページ遷移を利用したサイトとそうでないサイトのサーバとのデータのやり取りの流れを比較すると、以下のようになります。

このように、それぞれではアクセスの仕組みは全く異なっています。そのためアクセス解析の方法、というよりもむしろアクセスという概念そのものが異なっており、それを踏まえないことには、正しい分析を行うことはできないわけです。