(57)【要約】【目的】閲覧者がリンク切れのエラーメッセージを受信する毎に、その旨をリンク元ウェブページの管理者へも通知するリンク切れチェックプログラムを、提供する。【構成】閲覧者端末３のディスプレイ上に表示されたリンクアイテムが操作されると、チェックプログラム２２１の起動を要求するＨＴＴＰリクエストメッセージが閲覧者端末３からチェックサーバ２へ送信される。このメッセージに応じてチェックプログラム２２１を起動したチェックサーバ２は、引数として渡されたリンク先ウェブコンテンツのＵＲＬ宛にアクセスし、正常を示すレスポンスコードが応答された場合には、このリンク先ウェブコンテンツに対するリダイレクト処理を行い、異常を示すレスポンスコードが応答された場合には、要求元閲覧者端末３に対してエラーを応答し、引数として渡された管理者コードに対応するメールアドレス宛にリンク切れ通知のメールを送信するとともに、リンク切れの事実をログに登録する。【選択図】  図１
2006260343.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して端末装置及び他のサーバ装置と通信可能なコンピュータの処理装置に読み込まれて実行されるリンク切れチェックプログラムであって、
ＨＴＭＬデータに組み込まれるとともに自己のＵＲＬを指定し且つリンク先ウェブコンテンツのＵＲＬ及び当該ＨＴＭＬデータの管理者の識別情報を引数とするアンカータグが操作されることによって、当該ＨＴＭＬデータを読み込んだ前記端末装置の処理装置が自己宛に送信した前記各引数を含むリクエストメッセージを、前記端末が受信することによって起動され、
前記処理装置に対して、
前記リクエストメッセージに引数として含まれるリンク先ウェブコンテンツのＵＲＬ宛にアクセスすることによってレスポンスコードを取得させるレスポンスコード取得処理を実行させ、
このレスポンスコードが正常であることを示している場合には、前記リンク先ウェブコンテンツのＵＲＬに対するリダイレクト処理を実行させる一方、
前記レスポンスコードが異常であることを示している場合には、前記アンカータグについてリンク切れが発生している旨を通知する電子メールを、前記リクエストメッセージに引数として含まれている識別情報が示す前記管理者宛に送信させる通知処理を実行させる
ことを特徴とするリンク切れチェックプログラム。
【請求項２】
前記処理装置に対して、前記通知処理においては、各管理者毎に識別情報と電子メールアドレスとを対応付けた表を参照させて、前記前記リクエストメッセージに引数として含まれている識別情報に対応した電子メールアドレスを読み出させて、読み出された電子メールアドレス宛てに前記電子メールを送信させる
ことを特徴とする請求項１記載のリンク切れチェックプログラム。
【請求項３】
前記レスポンスコードが異常であることを示している場合には、更に、前記処理装置に対して、前記ＨＴＭＬデータのＵＲＬと前記リンク先ウェブコンテンツのＵＲＬとを対応付けてログに記録する
ことを特徴とする請求項１記載のリンク切れチェックプログラム。
【請求項４】
前記処理が処理装置に対して、前記ログには、前記ＨＴＭＬデータのＵＲＬと前記リンク先ウェブコンテンツのＵＲＬの組合せについて複数回に渡って前記ログに記録すべき場合には、当該ＨＴＭＬデータのＵＲＬと前記リンク先ウェブコンテンツのＵＲＬの組合せに対応させて、異常を示すレスポンスコードの受信回数を記録させる
ことを特徴とする請求項１記載のリンク切れチェックプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＨＴＭＬデータ中に組み込まれたアンカータグによって設定されたリンクが切れていることをチェックするためのリンク切れチェックプログラムに、関する。
【背景技術】
【０００２】
インターネットを通じてウェブサーバから受信したＨＴＭＬデータに基づいて端末上で実行されているブラウザプログラムがディスプレイ上に表示するウェブページには、インターネット上に存在する他のウェブページに飛ぶためのリンクアイテムが含まれていることがある。このリンクアイテムは、ＨＴＭＬデータ中に組み込まれた下記形式のアンカータグによって表示される。
【０００３】
<a href="http://www.nifty.com/">nifty</a>
このアンカータグによると「nifty」との文字列がリンクアイテムとして、ウェブページ（以下、「リンク元ウェブページ」という）中に表示される。そして、このように表示された当該リンクアイテム「nifty」を、端末のオペレータ（閲覧者）がマウス等によって操作（クリック）すると、タグ中に組み込まれたＵＲＬが示すウェブサーバ宛に、httpリクエストメッセージが送信され、そのウェブサーバから当該ＵＲＬに対応したウェブコンテンツ（ＨＴＭＬデータ，画像データ等，以下、「リンク先ウェブコンテンツ」という）を格納したhttpレスポンスメッセージが応答され、このリンク先ウェブコンテンツに基づいた画面が、ブラウザプログラムによって当該端末のディスプレイ上に表示されるのである。
【０００４】
但し、このようなリンク元ウェブページ中のリンクアイテムによってリンクされたリンク先のウェブコンテンツ，即ち、アンカータグ中に組み込まれたＵＲＬによって指定されたリンク先ウェブコンテンツは、未来永劫に存在するものではなく、時間が経過するにつれて、当該リンク先ウェブコンテンツの管理者の都合に依り、削除されたり、移転されたり、リニューアルによってアクセス不能になることが多い。その場合には、リンク元ウェブページを端末のディスプレイ上に表示させている閲覧者が、そのリンク元ウェブページ中のリンクアイテムを操作しても、リンク先ウェブコンテンツに飛ぶことができない（即ち、リンク先ウェブコンテンツを当該端末のディスプレイ上に表示させることができない）。このような状態は、一般に、「リンク切れ」と呼ばれ、閲覧者に対して期待した情報にアクセスできないフラストレーションを与えてしまうばかりか、リンク元ウェブページの管理者にとっても、意図した表現や情報発信をすることができない事となってしまうので、迅速に修正（例えば、アンカータグ中のリンク先ＵＲＬをリンク先ウェブコンテンツの移転先ＵＲＬに変更する，移転先ＵＲＬが不明の場合及び完全に削除されていた場合には同等の内容を公開している他の同等のウェブコンテンツのＵＲＬに変更する，そのような代替可能なウェブコンテンツが無い場合にはリンクアイテム自体を削除する，当該リンク元ウェブページの構成をそのリンク先ウェブコンテンツを必要としない構成に編集し直す，等）されなければならない。
【０００５】
リンク元ウェブページの管理者は、リンク先ウェブコンテンツが自己のリンク元ウェブページ（ＨＴＭＬデータ）と同じコンテンツプロバイダが運営しているウェブサーバ内にアップロードされているのであれば、このコンテンツプロバイダが管理しているアクセスログを定期的にチェックしたり、アクセスログに基づいた通知をコンテンツプロバイダから提供されることによって、リンク元ウェブページ中のリンクアイテムのリンク切れを、直ちに知ることが可能である。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、リンク先ウェブコンテンツが、リンク元ウェブページ（ＨＴＭＬデータ）がアップロードされているウェブサーバとは別のコンテンツプロバイダによって運営されているウェブサーバにアップロードされている場合には、リンク元ウェブページの管理者は、リンク先ウェブコンテンツに対するアクセスログを、通常利用することができない。
【０００７】
また、閲覧者がリンク切れしているリンクアイテムを操作した場合には、リンク先ＵＲＬに対応するウェブサーバ等から、エラーの旨のレスポンスメッセージ(404 Not Found等)が応答され、閲覧者の端末のディスプレイ上に、「ページが見つかりません」の旨のメッセージが表示されるのみである。よって、閲覧者によって発見されたリンク切れの情報は、リンク元ウェブページの管理者へは直ちに通知されない。
【０００８】
そのため、リンク元ウェブページの管理者は、自ら、定期的に、当該リンク元ウェブページを閲覧し、そこに含まれている各リンクアイテムを一々操作して、リンク切れが発生しているか否かを確かめざるを得なかった。
【０００９】
しかしながら、その管理者が管理しているリンク元ウェブページの数及びリンクアイテムの数が膨大である場合には、かかる目的専用にカスタマイズした巡回ツールを利用したとしても、ＵＲＬを手作業で入力する手間が掛かる等、煩雑極まりなかった。しかも、このようなツールを用いた場合には、アルファベット順等の予め定めた形式的な順序で巡回をせざるを得ないので、実際にはあまり利用されていないが為に管理の必要性が低いウェブページであっても、重要度の高いウェブページよりも前に巡回が行われてしまう不都合もあった。
【００１０】
本発明は、このような点に鑑みてなされたものであり、その課題は、閲覧者がリンク切れのエラーメッセージを受信する毎に、その旨をリンク元ウェブページの管理者へも通知するリンク切れチェックプログラムの提供である。
【課題を解決するための手段】
【００１１】
上記課題を解決するために案出された本発明によるリンク切れチェックプログラムは、ネットワークを介して端末装置及び他のサーバ装置と通信可能なコンピュータの処理装置に読み込まれて実行されるリンク切れチェックプログラムであって、ＨＴＭＬデータに組み込まれるとともに自己のＵＲＬを指定し且つリンク先ウェブコンテンツのＵＲＬ及び当該ＨＴＭＬデータの管理者の識別情報を引数とするアンカータグが操作されることによって、当該ＨＴＭＬデータを読み込んだ前記端末装置の処理装置が自己宛に送信した前記各引数を含むリクエストメッセージを、前記端末が受信することによって起動され、前記処理装置に対して、前記リクエストメッセージに引数として含まれるリンク先ウェブコンテンツのＵＲＬ宛にアクセスすることによってレスポンスコードを取得させるレスポンスコード取得処理を実行させ、このレスポンスコードが正常であることを示している場合には、前記リンク先ウェブコンテンツのＵＲＬに対するリダイレクト処理を実行させる一方、前記レスポンスコードが異常であることを示している場合には、前記アンカータグについてリンク切れが発生している旨を通知する電子メールを、前記リクエストメッセージに引数として含まれている識別情報が示す前記管理者宛に送信させる通知処理を実行させることを、特徴とする。
【００１２】
このように構成された本発明のリンク切れチェックプログラムは、何れかのリンク先ウェブコンテンツへリダイレクトさせるためのリクエストメッセージを端末装置から受信すると、先ず、このリンク先ウェブコンテンツへアクセスし、アクセスに対するレスポンスコードが正常であることを示している場合には、そのまま、リンク先ウェブコンテンツに対するリダイレクト処理を実行してリクエストを転送する一方、レスポンスコードが異常であることを示している場合には、リンク元ＨＴＭＬデータの管理者に対して電子メールにてリンク切れの発生を通知する。その結果、管理者は、自ら巡回することなく、リンク切れの事実を知ることができるので、実際に他者によって閲覧を試みられたが故に重要性が高いと考えられるリンクを、修正することが可能となる。
【００１３】
本発明において、レスポンスコードが異常であることを示している場合には、リンク元ＨＴＭＬデータのＵＲＬとリンク先ウェブコンテンツのＵＲＬとを互いに対応付けて、ログに記録しても良い。そのようにして、リンク切れが発見される毎にログが記録されれば、管理者は、そのログを分析することによって、リンク切れが発見された回数が多いリンクを、重要度がより高いものとして優先して修正を行うことができるので、修正作業の効率を上げることが可能になる。
【発明の効果】
【００１４】
以上説明したように、本発明によれば、閲覧者がリンク切れのエラーメッセージを受信する毎に、その旨がリンク元ウェブページの管理者へも通知されるので、管理者は、リンク切れの事実を直ちに知ることができる。
【発明を実施するための最良の形態】
【００１５】
以下、図面に基づいて、本発明によるリンク切れチェックプログラムの実施の形態を、説明する。
（システム構成）
図１は、上記リンク切れチェックプログラムを実施するためのネットワークシステムの概略構成図である。この図１に示されるように、このネットワークシステムは、同一のコンテンツプロバイダによって運営されており、夫々インターネットＮに接続されているとともに互いにＬＡＮ（Local Area Network）によって接続されたウェブコンテンツ管理サーバ１及びチェックサーバ２，ウェブコンテンツ管理サーバ１に対してインターネットＮを介してアクセス可能な閲覧者端末３，チェックサーバ２に対してインターネットＮを介してアクセス可能な管理者端末４，上記コンテンツプロバイダとは別のコンテンツプロバイダによって運営されており、チェックサーバ２及び閲覧者端末３からネットワークＮを介してアクセス可能な管理外サーバ５から、構成されている。なお、図１において、インターネットＮは、二ヶ所に分かれて示されているが、これは図示の都合に依るものであり、実際には、一つのネットワークである。
【００１６】
閲覧者端末３及び管理者端末４は、インターネット接続機能を有した通常のパーソナルコンピュータ又はＰＤＡ（Personal Digital Assistance）であり、モデムやＬＡＮアダプタのような通信ハードウェア，並びに、通信プログラムやウェブブラウザのようなソフトウェアを、有している。
【００１７】
ウェブコンテンツ管理サーバ１及び管理外サーバ５は、ともに同様なハードウェア構成及びソフトウェアを備えたサーバ装置である。即ち、これらウェブコンテンツ管理サーバ１及び管理外サーバ５は、夫々、制御装置としてのＣＰＵ１１，５１，記憶媒体としてのディスク装置１２，５２，等のハードウェアを備えている。ディスク装置１２，５２には、夫々、ＣＰＵ１１，５１に読み取られて実行されることによってこのＣＰＵ１１，５１をウェブサーバとして機能させるウェブサーバプログラム１２１，５２１，及び、ＨＴＭＬデータ等の多数のウェブコンテンツ１２２，５２２が、格納されている。そして、 ウェブサーバとして機能しているＣＰＵ１１，５１は、何れかのウェブコンテンツ１２２，５２２のＵＲＬを指定したhttpリクエストメッセージを受信すると、指定されたＵＲＬが示すウェブコンテンツ１２２，５２２をディスク装置１２，５２から読み出して、当該httpレスポンスメッセージ中に送信元として特定されている端末（閲覧者端末３）宛のhttpレスポンスメッセージに格納して、当該端末（閲覧者端末３）へ応答する。
【００１８】
ウェブコンテンツ管理サーバ１には、更に、ＣＭＳプログラム１２０が格納されている。このＣＭＳプログラム１２０は、ＣＰＵ１１に対して、管理者が操作する管理者端末４から送信されてくる簡単な形式の指示に従って、ウェブコンテンツ１２２としてのＢＬＯＧ形式のＨＴＭＬデータを自動的させるプログラムである。このＨＴＭＬデータ中にリンクアイテムを表示させるためのアンカータグを自動的に組み込む機能も、このＣＭＳプログラム１２０が実現する機能のうちの一つである。但し、このＣＰＵプログラム１２０がＨＴＭＬデータを組み込むアンカータグの形式については、後で詳しく説明する。
【００１９】
チェックサーバ２は、制御装置としてのＣＰＵ２１，記憶媒体としてのディスク装置２２，等のハードウェアを備えている。ディスク装置２２には、ＣＰＵ２１に読み取られて実行されるチェックプログラム２２１，並びに、このチェックプログラム２２１の実行中に、ＣＰＵ２１によって参照される管理者コード表２２２，及び、このＣＰＵ２１が作成するログ２２３が、格納されている。
【００２０】
このチェックプログラム２２１は、ウェブコンテンツ管理サーバ１のディスク装置１２内に格納されているウェブコンテンツ１２２としての各ＨＴＭＬデータ中に設定されている各アンカータグによるリンクアイテムが、夫々、リンク切れを発生しているかどうかを調べるためのプログラムである。このチェックプログラム２２１による処理の内容については、図２を参照して、後で詳しく説明する。
【００２１】
管理者コード表２２２は、図３に示すように、ウェブコンテンツ管理サーバ１のディスク装置１２内に格納されているウェブコンテンツ１２２としての各ＨＴＭＬデータの管理者について、夫々、その識別コード（管理者コード）とメールアドレスとを相互に関連付けて定義するテーブルである。また、ログ２２３は、リンク切れが発生したリンクアイテム毎に作成されたレコードからなり、各レコードは、夫々、対応するリンクアイテムが組み込まれたリンク元ウェブページのＵＲＬが記録される「リンク元」フィールド，そのリンクアイテムにおけるリンク先ＵＲＬが記録される「リンク先（管理外）」フィールド，そのリンクアイテムについてリンク切れが発見された回数が記録される「回数」フィールドを含む。
【００２２】
以上に説明したネットワークシステムにおけるリンク切れチェックに関する各プログラムの処理について、以下に説明する。説明の前提として、チェックプログラム２２１のパスは、以下の通りであるとする。
【００２３】
172.19.146.25/linkcheck/chk.php
ここに、「172.19.146.25」はチェックサーバ２のＩＰアドレスであり、「chk.php」はチェックプログラム２２１のプログラム名であり、「linkcheck」はチェックプログラム２２１が格納されているディレクトリ名である。
【００２４】
また、上述したＣＭＳプログラム１２０により、ウェブコンテンツ管理サーバ１のディスク装置１２中にウェブコンテンツ１２２として格納されている何れかのＨＴＭＬデータ中に組み込まれるアンカータグは、下記のように、チェックサーバ２上のチェックプログラム２２１からリダイレクトする形式となっている。
【００２５】
<a href="172.19.146.25/linkcheck/chk.php
?URL=リンク先&id=管理者コード">
リンクアイテムの文字列又は画像データのＵＲＬ
</a>
ここに、?以下は、リダイレクト元のチェックプログラム２２１に渡される引数である。そして、今、リダイレクト先のリンク先ウェブコンテンツが、管理外サーバ５のディスク装置５２内に格納されている何れかのウェブコンテンツ５２２であり、そのＵＲＬが「http://www.nifty.com」であるとする。また、リンク元ウェブページの管理者の管理者コードが「3038」であるとする。さらに、リンクアイテムとしての文字列が「nifty」であるとする。この場合には、上記アンカータグの内容は、以下の通りとなる。      
【００２６】
<a href="172.19.146.25/linkcheck/chk.php
?URL=http://www.nifty.com/&id=3038">nifty</a>
従って、何れかの閲覧者端末３のディスプレイ上に表示されている当該リンク元ウェブページ上で、上記アンカータグによって表示されているリンクアイテム「nifty」を閲覧者が操作すると、チェックサーバ２に対してチェックプログラム２２１の起動が要求され、当該リンクアイテム中の引数がこのチェックプログラム２２１に渡される。
【００２７】
このようにして起動されたチェックプログラム２２１は、図２のフローチャートに概略を示す処理を実行する。この処理が始まって最初のＳ１では、チェックプログラム２２１は、受け取った引数から、リダイレクト先のリンク先ウェブコンテンツのＵＲＬ，及び、管理者コードを取得する。
【００２８】
次のＳ２では、チェックプログラム２２１は、Ｓ１にて取得したリンク先ウェブコンテンツのＵＲＬにアクセスして、レスポンスコードを取得する。このレスポンスコードとしては、当該リンク先ウェブコンテンツのＵＲＬに相当するウェブコンテンツが存在する場合には、正常であることを示す「２００」が応答され、そのようなウェブコンテンツが存在しなかった場合には、異常であることを示す「４０４」が応答される。
【００２９】
次のＳ３では、チェックプログラム２２１は、Ｓ２にて取得したレスポンスコードが、正常であることを示す「２００」であるか、異常であることを示す「４０４」であるかをチェックする。そして、レスポンスコードが「２００」であれば、チェックプログラム２２１は、Ｓ７において、当該リンク先ウェブコンテンツのＵＲＬに対するリダイレクト処理を実行する。即ち、当該リンク先ウェブコンテンツのＵＲＬを宛先として指定するとともに、要求元閲覧者端末３のＩＰアドレスを応答先として指定したＨＴＴＰリクエストメッセージを、当該リンク先ウェブコンテンツ５２２をディスク装置５２内に格納した管理外サーバ５へ送信する。すると、管理外サーバ５のウェブサーバプログラム５２１は、要求されたリンク先ウェブコンテンツ５２２をディスク装置５２から読み出して、応答先としてＩＰアドレスが指定された閲覧者端末３宛のhttpレスポンスメッセージに格納して、当該閲覧者端末３へ応答する。その結果、閲覧者端末３のディスプレイ上には、応答されたリンク先ウェブコンテンツ５２２が表示される。
【００３０】
これに対して、レスポンスコードが「４０４」であるとＳ３にて判断した場合には、チェックプログラム２２１は、Ｓ４において、要求元閲覧者端末３に対してエラー表示をさせる。即ち、リンク先ウェブページが見つからないことを示すウェブページのＨＴＭＬデータを、当該要求元閲覧者端末３に応答する。
【００３１】
次のＳ５では、チェックプログラム２２１は、Ｓ２にて取得した管理者コードに対応した当該管理者のメールアドレスを管理者コード表２２２から読み出し、このメールアドレス宛に、当該リンクにリンク切れが発生した旨，即ち、当該リンクにおけるリンク先ウェブコンテンツが存在しない旨を記述したメールを送信する。なお、この記述には、当該リンクが含まれるリンク元ＨＴＭＬデータのＵＲＬを含める必要があるが、そのようなＵＲＬは、要求元閲覧者端末３から通知されるリファラーから取得可能である。
【００３２】
次のＳ６では、チェックプログラム２２１は、リファラーから取得したリンク元ＨＴＭＬデータのＵＲＬを「リンク元」欄に記録するとともに当該リンク先ウェブコンテンツのＵＲＬを「リンク先」欄に記録したレコードがログ２２３に含まれるか否かをチェックする。そして、そのようなレコードがログ２２３内に存在していなければ、そのようなレコードを新たに作成するとともに、その新たなレコードの「回数」欄に１を記録する。これに対して、そのようなレコードが既に存在していれば、そのレコードの「回数」欄の値を一つインクリメントする。
【００３３】
以上に説明した本実施形態のリンク切れチェックプログラムによると、何れかの閲覧者が、何れかのリンク元ウェブページ中の何れかのリンクアイテムを操作したときに、そのリンクアイテムにリンク切れが発生している場合には、その閲覧者の閲覧者端末３のディスプレイ上にエラー表示がなされるとともに（Ｓ４）、そのリンクアイテムについてのリンク切れの事実が、メールによって、当該リンク元ウェブページの管理者へ送信され（Ｓ５）、さらに、当該リンク切れの事実が、ログ２２３に記録される（Ｓ６）。なお、リンク切れを発生している同一のリンクアイテムについて複数の閲覧者が操作を行った場合には、各閲覧者によって操作がなされる都度、当該リンクアイテムに関してログ２２３に登録されているレコード中の「回数」欄の値がインクリメントされる。このようにしてインクリメントされる「回数」欄の値は、そのリンクアイテムが各閲覧者によって操作された回数であるので、そのリンクアイテムの重要度を示しているといえる。そして、重要度が高いリンクアイテムほど、その修正の必要性も高いことになる。よって、閲覧者は、自己が管理するウェブページ中の各リンクアイテムについて、「回数」欄の値の降順にログ２２３をソートすれば、各リンクアイテムの修正の優先順位を知ることができる。なお、リンク切れが生じたとしても、全く操作されないリンクアイテムについては、管理者への通知もログ２２３への登録もなされないが、そのようなリンクアイテムは、重要度が低く修正の必要性も低いと考えられるので、実質的に支障はない。
【図面の簡単な説明】
【００３４】
【図１】本発明の一実施形態としてのネットワークシステムのブロック図
【図２】チェックプログラムに従って実行される処理を示すフローチャート
【図３】管理者コード表の構成を示す図
【図４】ログの構成を示す図
【符号の説明】
【００３５】
１      ウェブコンテンツ管理サーバ
２      チェックサーバ
３      閲覧者端末
４      管理者端末
５      管理外サーバ
２１      ＣＰＵ
１２２      コンテンツ
２２１      チェックプログラム
２２２      管理者コード表
２２３      ログ
５２１      ウェブサーバ
５２２      コンテンツ
【図１】
2006260343.tif 000003
【図２】
2006260343.tif 000004
【図３】
2006260343.tif 000005
【図４】
2006260343.tif 000006