トップ > ウェブアーカイブのしくみ(おすすめコンテンツ) > 14. 閲覧アプリケーション Wayback

14. 閲覧アプリケーション Wayback

WaybackはWARCフォーマットで保存されたウェブアーカイブを表示するためのツールです。米国の非営利団体インターネットアーカイブは収集したウェブサイトを閲覧できるようWayback Machineというサービスを提供しており、そのオープンソース版がWaybackです。インターネットアーカイブを中心として開発が進められてきました。

特徴

Waybackを使うと、Heritrixなどのクローラで収集されたWARCフォーマットのアーカイブを表示することができます。つまり、収集時点のウェブサイトをブラウザで閲覧することができます。なお、WARCフォーマットが国際規格化される以前に使われていたARCフォーマットにも対応しています。

WaybackはJava言語で開発されているオープンソースソフトウェアです。ソフトウェアライセンスとしてApache License, Version 2.0を採用していますので、ユーザはそのライセンスのもとで自由に修正、再頒布等を行うことができます。動作にあたっては、UNIX系のOS、Java Runtime Environment 1.5以上、Apache Tomcat 6.0がシステム要件です。

2005年にバージョン0.2が公開され、2013年12月時点でバージョン1.6.0が公開されています。現在、インターネットアーカイブに代わりIIPCが中心となり、2014年中の公開に向けバージョン2.0.0の開発が進められているところです[http://netpreserve.org/about-us/news/iipc-re-launches-open-source-wayback]。このページの説明はバージョン1.6.0を基にしています。

機能

概要

Waybackは大きく2つの機能を持っています。1つ目は、クローラが収集したアーカイブファイルからURLと収集日時を取り出しインデクスを作成するインデキシング機能です。2つ目は、閲覧要求に応じてアーカイブを表示する機能です。

  1. インデキシング機能
    1. インデキシング機能:アーカイブからインデクスを作成する機能
  2. 表示機能
    1. 表示機能:アーカイブをブラウザへ表示させる機能
    2. アクセス制御機能:アクセス制限を提供する機能
    3. UIカスタマイズ機能:検索結果の表示形式などを変更する機能

下図はこれらの機能を図示したものです。

Waybackの機能

1. インデキシング機能

Waybackは事前にアーカイブファイルからURLと収集日付を取り出し、インデクスを作成します。ウェブサイトのアーカイブは容量がTB(テラバイト)~PB(ペタバイト)と非常に大きくなるのが特徴的です。表示の度ごとに規模の大きなアーカイブを直接探すのでは非効率的ですので、インデクスを作成することで効率的にアーカイブの中から要求のあった日時のデータを抽出することができるようにします。

インデキシング処理の流れは下図のとおりです。

インデキシング処理の流れ

処理内容は、大きく2つに分けられます。1つは、アーカイブの格納場所をロケーションデータベースへ登録する処理です。もう1つは、アーカイブからインデクスを作成しリソースインデクスと呼ばれるデータベースへ登録する処理です。その際、作られるインデクスはCDXファイルと呼ばれます。

上図の各処理の概要を次の表で説明します。

処理名 概要
1. アーカイブ格納場所登録 ウェブサイトの収集が終わりアーカイブが作成されると、アーカイブのファイル名とその格納場所をロケーションデータベースへ登録します。
2. インデクス作成 アーカイブからCDXファイルを作成します。CDXファイルはURL、収集日時そしてそのURLが含まれているアーカイブファイル名などがまとめられたファイルです。
詳細はhttp://archive.org/web/researcher/cdx_file_format.phpをご覧ください。
3. インデクス登録 CDXファイルの内容をリソースインデクスに登録します。

2. 表示機能

Waybackの表示機能により、ブラウザでアーカイブを閲覧することができます。表示機能には3つの表示モードがあり、いずれかを選択します。

表示モード 概要
1. Archival URL Replayモード
  • 専用URLでアーカイブを表示します。
  • アーカイブページ内のリンクを専用URLに書き換えて表示します。
  • 専用URLでアクセスするため、JavaScriptなどの動作が正常に再現されない場合があります。
2. Proxy Replayモード
  • ブラウザのプロキシ設定にWaybackサーバを指定することで、元のURLでアーカイブを表示できます。
  • 元のURLでアクセスするため、JavaScriptの問題は起こりません。
3. DomainPrefix Replayモード
  • DNSを設定することで、ブラウザのプロキシ設定なしにProxy Replayモードと同様に元のURLで表示できます。
  • 実験的なモードです。


ここでは、ウェブアーカイブ機関で多く用いられている「1. Archival URL Replayモード」について説明します。

アーカイブを表示する際、ブラウザからは次の Archival URL Replayモード専用のURLを利用します。

http://HOSTNAME:PORT/CONTEXT/ACCESS-POINT/TIMESTAMP/URL

URLの各項目は次のとおりです。

  • HOSTNAME : Waybackが動作しているホスト名
  • PORT : アクセスポート番号(80番なら省略可)
  • CONTEXT : Waybackをデプロイしたときのコンテキスト名(ROOTの場合省略)
  • ACCESS-POINT(アクセスポイント) : 異なる設定を適用するために付与する名前(省略可)
  • TIMESTAMP : 検索対象の日付(年月日時分秒)
  • URL : 検索対象ページのURL

Wayback Machineを例に、実際のURLを見てみます。

http://web.archive.org/web/20130204110456/http://warp.da.ndl.go.jp/

このURLにアクセスすると2013年2月4日11時4分56秒に保存された http://warp.da.ndl.go.jp/ が表示されます。また、表示ページのHTMLソースを表示すると、リンクがすべて専用URLに書き換わっていることが分かります。

なお、日付の指定は完全に一致している必要はありません。指定した日付に近い日のアーカイブが表示されるようになっています。

3. アクセス制御機能

Waybackはページとアクセスポイントに対してアクセス制御を行うことが可能です。アクセス制御は下表のとおり4種類あります。これ以外のアクセス制御はできません。例えば、各ページに対して、ユーザごとにアクセス制御を設定することはできません。

項番 制御対象 対象者 制御方法
1 ページ 利用者全員 アーカイブ元の robots.txt による制限
2 利用者全員 URL指定による制限
3 アクセスポイント 指定したIPアドレス IPアドレスによる制限
4 指定したユーザ ユーザ認証による制限


  1. ページに対する制限(robots.txt)

    この制限を適用すると、利用者が閲覧を要求したサイトの元サイトにrobots.txtが設置されている場合に、そのrobots.txtに記載されている内容に従ってアクセス制御が行われます。また、保存時点でrobots.txtが設置されていない場合でも、その後robots.txtが設置されれば、アーカイブの閲覧時にはそのrobots.txtに基づいたアクセス制御が行われます。

  2. ページに対する制限(URL指定)

    設定ファイルにアクセス制限の対象とするURLを記述することで、該当ページの表示を制限することができます。

  3. アクセスポイントに対する制限(IPアドレス)

    設定ファイルにアクセスを許可するIPアドレスを記述することで、該当IPアドレス以外からのアクセスを禁止することができます。

  4. アクセスポイントに対する制限(ユーザ認証)

    設定ファイルに対象とするアクセスポイントを記述し、BASIC認証による制限ができます。ユーザ名及びパスワードはあらかじめ設定ファイルに追加しておく必要があります。

4. UIカスタマイズ機能

ユーザインタフェース(UI)の一部をカスタマイズすることができます。カスタマイズできるUIは下表の通りです。

カテゴリー 概要
Query UI WaybackはアーカイブをURLで検索することができます。その際、検索結果表示を次の3パターンの中から選択することができます。
・カレンダー形式
・一覧表示形式
・xml形式
Replay Inserts アーカイブの表示画面に、コメントやバナー、デバッグ用メッセージなどを表示することができます。また、設定ファイルを変更することで、表示内容をカスタマイズすることができます。
Exception アーカイブの表示時に発生するエラー画面をカスタマイズすることができます。
Localization 利用者の利用言語(ブラウザの設定)に応じて、検索結果表示画面やエラー画面の言語を切り替えることができます。ただし、切り替えるためには、その言語用の設定ファイルを用意する必要があります。初期は英語が設定されています。なお、日本語の設定ファイルは用意されていません。

(最終更新日:2014/10/1)

ページの先頭へ