(57)【特許請求の範囲】
【請求項１】
ワールド・ワイド・ウェブベースのネットワークアプリケーションが動作するクライアントサーバシステムであって、
サーバプロセスを実行する第１のサーバと、プロキシサーバ機能を提供する第２のサーバと、通信ネットワークに接続されて前記第１のサーバ及び前記第２のサーバにアクセスするクライアントとを備え、
前記第２のサーバは、ウェブブラウザ上で動作するプロキシサーバ機能と、当該ウェブブラウザにて読み込まれることにより当該ウェブブラウザのプロキシ設定を当該プロキシサーバ機能の動作に適した設定に変更し当該プロキシサーバ機能を起動する制御機能とを備えたウェブページプログラムを格納し、
前記クライアントは、前記通信ネットワークを介して前記第２のサーバからダウンロードした前記ウェブページプログラムに基づくウェブページを表示するウェブブラウザを組み込み、当該ウェブブラウザにて当該ウェブページプログラムを読み込むことにより当該ウェブページプログラムが備えるプロキシサーバ機能を起動することを特徴とするクライアントサーバシステム。
【請求項２】
前記ウェブページプログラムが、
前記プロキシサーバ機能を実現するプロキシサーバプログラムと、
前記クライアントに組み込まれた前記ウェブブラウザで表示されるウェブページを構成すると共に前記ウェブブラウザに読み込まれた際に前記プロキシサーバプログラムを起動する前記制御機能を備えたページデータとで構成されたことを特徴とする請求項１に記載のクライアントサーバシステム。
【請求項３】
前記ページデータが、前記プロキシサーバプログラムを起動する際に前記クライアントに組み込まれた前記ウェブブラウザのプロキシ設定を前記プロキシサーバプログラムの動作に適した設定に変更する機能を更に備えることを特徴とする請求項２に記載のクライアントサーバシステム。
【請求項４】
クライアントサーバシステムを構成するサーバであって、
通信ネットワークに接続してクライアントからのアクセス要求を受け付けるための接続部と、
前記接続部を介して受信した前記クライアントからのアクセス要求に応えて提供される、ウェブブラウザ上で動作するプロキシサーバ機能と、当該ウェブブラウザにて読み込まれることにより当該ウェブブラウザのプロキシ設定を当該プロキシサーバ機能の動作に適した設定に変更し当該プロキシサーバ機能を起動する制御機能とを備えたウェブページプログラムを格納した格納部と
を備えたことを特徴とするサーバ。
【請求項５】
前記格納部が、前記ウェブページプログラムをワールド・ワイド・ウェブに対応したコンテンツとして格納していることを特徴とする請求項４に記載のサーバ。
【請求項６】
ウェブブラウザを組み込み、クライアントサーバシステムを構成するクライアントであって、
サーバプロセスにより提供されるコンテンツを前記ウェブブラウザにてウェブページとして表示するコンテンツ表示部と、
ウェブブラウザ上で動作するプロキシサーバ機能と、当該ウェブブラウザにて読み込まれることにより当該ウェブブラウザのプロキシ設定を当該プロキシサーバ機能の動作に適した設定に変更し当該プロキシサーバ機能を起動する制御機能とを備えたウェブページプログラムを前記ウェブブラウザに読み込んで当該ウェブページプログラムに基づくウェブページを表示することにより、当該ウェブページプログラムの制御機能に基づき当該ウェブブラウザのプロキシ設定を変更して当該プロキシサーバ機能を起動し、当該プロキシサーバ機能による処理を実行するプロキシサーバ機能実行部と
を備えたことを特徴とするクライアント。
【請求項７】
前記プロキシサーバ機能実行部が、前記ウェブブラウザに前記ウェブページプログラムを読み込んだ際に、前記コンテンツ表示部から発行されたリクエスト及び前記コンテンツ表示部へ送られるリプライに対して前記ウェブページプログラムを経由させてプロキシサーバ機能による処理を実行させるように前記ウェブブラウザのプロキシ設定を変更することを特徴とする請求項６に記載のクライアント。
【請求項８】
前記コンテンツ表示部が前記ウェブブラウザにてウェブページを表示するプロセスと、前記プロキシサーバ機能実行部が前記ウェブブラウザにて前記ウェブページプログラムに基づくウェブページを表示するプロセスとが同一であることを特徴とする請求項６に記載のクライアント。
【請求項９】
プロキシサーバの起動及び停止を制御するプロキシサーバ制御方法であって、
ウェブブラウザ上で動作するプロキシサーバ機能と、当該ウェブブラウザにて読み込まれることにより当該ウェブブラウザのプロキシ設定を当該プロキシサーバ機能の動作に適した設定に変更し当該プロキシサーバ機能を起動する制御機能とを備えたウェブページプログラムをロードするステップと、
前記ウェブページプログラムの制御機能に基づき、サーバプロセスへのリクエスト及びサーバプロセスからのリプライに対して前記ウェブページプログラムを経由させてプロキシサーバ機能による処理を実行させるようにウェブブラウザのプロキシ設定を変更するステップと、
前記ウェブページプログラムの制御機能に基づき、前記ウェブブラウザにて前記ウェブページプログラムに基づくウェブページを表示するステップと
を含むことを特徴とするプロキシサーバ制御方法。
【請求項１０】
ウェブブラウザのプロキシ設定の変更に先立って、変更前のプロキシ設定を保存するステップと、
前記ウェブブラウザにて表示された前記ウェブページを閉じる際に、前記ウェブブラウザのプロキシ設定を保存されたプロキシ設定の状態に戻すステップと
を更に含むことを特徴とする請求項９に記載のプロキシサーバ制御方法。
【請求項１１】
ワールド・ワイド・ウェブベースのネットワークアプリケーションが動作するクライアントサーバシステムにおけるプロキシサーバ機能提供方法であって、
ウェブブラウザ上で動作するプロキシサーバ機能と、当該ウェブブラウザにて読み込まれることにより当該ウェブブラウザのプロキシ設定を当該プロキシサーバ機能の動作に適した設定に変更し当該プロキシサーバ機能を起動する制御機能とを備えたウェブページプログラムをサーバにアップロードするステップと、
任意のクライアントに前記ウェブページプログラムを前記サーバからダウンロードし、ウェブブラウザに読み込んでウェブページを表示することにより、当該ウェブページプログラムの制御機能に基づき当該ウェブブラウザのプロキシ設定を変更して前記プロキシサーバ機能を起動するステップと
を含むことを特徴とするプロキシサーバ機能提供方法。
【請求項１２】
コンピュータに実行させるプログラムを当該コンピュータの入力手段が読み取り可能に記憶した記憶媒体において、
前記プログラムは、
ウェブブラウザ上で動作しプロキシサーバ機能を実現するプロキシサーバプログラムと、
ウェブブラウザにて表示されるウェブページを構成すると共に当該ウェブブラウザに読み込まれることにより当該ウェブブラウザのプロキシ設定を当該プロキシサーバ機能の動作に適した設定に変更し前記プロキシサーバプログラムを起動する機能を備えたページデータと
で構成されたことを特徴とする記憶媒体。
【請求項１３】
コンピュータに実行させるプログラムを当該コンピュータの入力手段が読み取り可能に記憶した記憶媒体において、
前記プログラムは、
ウェブブラウザ上で実行される、サーバプロセスへのリクエスト及びサーバプロセスからのリプライに対するプロキシサーバ機能による処理と、
ウェブブラウザに読み込まれることにより、当該ウェブブラウザにて表示されたウェブページから発行されたサーバプロセスへのリクエスト及びサーバプロセスからのリプライに対してプロキシサーバ機能による処理を実行させるように当該ウェブブラウザのプロキシ設定を変更し、当該プロキシサーバ機能を起動する処理と
を前記コンピュータに実行させることを特徴とする記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、クライアントサーバシステム上のアプリケーションにおいてプロキシサーバ機能をクライアントに提供するシステムに関する。
【０００２】
【従来の技術】
プロキシサーバは、本来、ネットワーク上にファイアウォールを実現するために、クライアントからサーバへのアクセスを代行、中継する機能を提供するものであった。しかし近年、ファイアウォールにおけるアクセスの代行、中継の機能の如何に関わらず、リクエストの先取りによるプリフェッチ、オートパイロット、キャッシングの機能等、プロキシサーバの機能が拡張されている。また、コンテンツのフィルタリングとして、内容の追加（プローブの埋め込み、ウイルスチェック等）や変更（翻訳、要約、語調変換等）、形式の調整や削除（グラフィックの削除、色数調整、不適切なリンクの削除等）といった機能を提供するようになってきている。
【０００３】
かかるプロキシサーバの機能の多様化に伴い、ただ一つのサーバによって上述したような様々な機能の提供を十分に行うことが困難となり、ネットワーク上の複数のサーバが種々のプロキシサーバの機能を提供する形態が現れてきている。特にＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）ベースで動作するアプリケーションが開発され、特定のアプリケーションで使用するための様々なプロキシサーバの機能（例えば、ウェブページへの調査用のプローブの埋め込み、日英翻訳の結果の埋め込み等）を、素早く簡単に起動して使用し、使用後は同様に素早く簡単にプロキシサーバの動作を停止できるようにする必要が出てきた。
【０００４】
上記のようなＷＷＷベースのアプリケーションにおいてプロキシサーバ機能を使用するには、ウェブブラウザでプロキシの設定を行う必要がある。しかし、かかる設定には特別な技術を要すること、また管理されたクライアントマシンによっては設定変更の権限がない場合があることから、一般ユーザにウェブブラウザのプロキシの設定を行わせることは現実的ではなかった。したがって、従来は、プロキシサーバを素早く簡単に起動したり、動作を停止させたりすることができなかった。
【０００５】
【発明が解決しようとする課題】
このように、現状では、クライアントにおいてプロキシサーバの機能を簡単な操作で素早く自由に切り替えながら使用する手段は存在していない。従来のプロキシサーバを用いて、少なくとも上述したような多様な機能を提供する場合、クライアントにおいて自由に切り替えながらプロキシサーバの機能を使用する手段がいくつか考えられる。例えば、サーバマシン上で必要なプロキシサーバ全てを動作させておく、クライアントマシン上でネイティブアプリケーションとして必要なプロキシサーバを動作させる、等である。
【０００６】
このサーバマシン上に必要なプロキシサーバのプロセスが全て立ち上がっている場合では、クライアントマシンにおけるウェブブラウザのプロキシ設定さえできれば、即座に当該プロキシ機能を使用することができる。しかしながら、上述したように、ウェブブラウザのプロキシ設定には特別な技術を要するため一般ユーザにとっては必ずしも容易ではない。
また、サーバにおいてプロキシサーバのプロセスが立ち上がっていない場合、クライアントマシンにプロキシサーバを立ち上げる権限がない場合があるため、実際に使用するか否かに関わらず使用する可能性のあるプロキシサーバのプロセスを全て立ち上げておくことが必要となる。しかしながら、実際には使用しないプロキシサーバも立ち上げるため、サーバマシンに余計な負荷を与えることとなる。さらに、サーバマシンはプロキシサーバの機能を使用しようとする全てのクライアントに対応しなければならないため、クライアントごとに個別に設定を行うことができず、柔軟性に欠ける。
【０００７】
更に、クライアントマシン上でネイティブアプリケーションとして必要なプロキシサーバを動作させる場合、クライアントマシンに当該アプリケーションプログラムをインストールする作業が必要となる。しかしながら、アプリケーションプログラムのインストール後においても、プロキシサーバの機能を使用したり使用を終了したりするたびにプロキシ設定を変更したり元に戻したりする作業が必要であり、多大な手間を要してしまう。
【０００８】
本発明は以上のような技術的課題を解決するためになされたものであって、ネットワークアプリケーションがプロキシサーバの機能を必要とした際に、簡単な操作で迅速にプロキシサーバ機能を使用できることを目的とする。
また、プロキシサーバ機能の使用後は簡単な操作で迅速に当該機能の使用前の状態に戻すことにより、プロキシサーバ機能を簡単かつ自在に切り替えて使用できるようにすることを目的とする。
【０００９】
更に、プロキシサーバ機能を提供するためにサーバマシンにかかる負荷を削減し、かつ新たなプロキシサーバ機能の提供にも柔軟かつ迅速に対応できるようにすることを他の目的とする。
【００１０】
【課題を解決するための手段】
かかる目的のもと、本発明は、ワールド・ワイド・ウェブベースのネットワークアプリケーションが動作するクライアントサーバシステムであって、サーバプロセスを実行する第１のサーバと、プロキシサーバ機能を提供する第２のサーバと、通信ネットワークに接続されて第１のサーバ及び第２のサーバにアクセスするクライアントとを備え、第２のサーバは、ウェブブラウザを用いてウェブページとして表示可能であると共にウェブブラウザにて読み込まれることにより動作するプロキシサーバ機能を備えたウェブページプログラムを格納し、クライアントは、通信ネットワークを介して第２のサーバからダウンロードしたウェブページプログラムに基づくウェブページを表示するウェブブラウザを組み込み、このウェブブラウザにてウェブページプログラムを読み込むことによりウェブページプログラムが備えるプロキシサーバ機能を起動することを特徴としている。
【００１１】
また、このウェブページプログラムが、プロキシサーバ機能を実現するプロキシサーバプログラムと、クライアントに組み込まれたウェブブラウザで表示されるウェブページを構成すると共にこのウェブブラウザに読み込まれた際にプロキシサーバプログラムを起動する機能を備えたページデータとで構成されたことを特徴とすることができる。これによれば、ウェブブラウザによってウェブページを表示する操作、すなわちこのウェブページ用の新しいウィンドウを開くという簡単な操作でプロキシサーバ機能を実現できる点で好ましい。
ここで、プロキシサーバプログラムは、ウェブブラウザ上で動作しながらクライアントマシンのＴＣＰ／ＩＰのソケット通信ができる実装方法で実現されればよく、具体的な実現形態は問わない。
また、ページデータにおけるプロキシサーバプログラムを起動する機能は、プラグインやＡｃｔｉｖｅＸコントロールを用いたり、ウェブページ上のイベントハンドラとスクリプト言語を用いて実現すればよく、具体的な実現形態は限定しない。
【００１２】
また、ページデータが、このプロキシサーバプログラムを起動する際にクライアントに組み込まれたウェブブラウザのプロキシ設定をこのプロキシサーバプログラムの動作に適した設定に変更する機能を更に備えることを特徴とすることもできる。そうすれば、ウェブブラウザのプロキシ設定をユーザが煩雑な手作業により行う必要がなくなる点で好ましい。
【００１３】
本発明は、以上のクライアントサーバシステムの他に、サーバ、クライアント、その他の態様として提供される。
すなわち、本発明は、クライアントサーバシステムを構成するサーバであって、通信ネットワークに接続してクライアントからのアクセス要求を受け付けるための接続部と、この接続部を介して受信したクライアントからのアクセス要求に応えて提供される、ウェブブラウザを用いてウェブページとして表示可能であると共にウェブブラウザにて読み込まれることにより動作するプロキシサーバ機能を備えたウェブページプログラムを格納した格納部とを備えたことを特徴としている。
【００１４】
この格納部が、ウェブページプログラムをワールド・ワイド・ウェブに対応したコンテンツとして格納していることを特徴とすれば、サーバはこのウェブページプログラムをインストールし、サーバマシン上で起動しておく必要がない。従って、クライアントが通常のホームページにアクセスする場合と同様の操作でウェブページプログラムをダウンロードできるため、サーバマシンの負荷を軽減できる。
【００１５】
また、本発明は、ウェブブラウザを組み込み、クライアントサーバシステムを構成するクライアントであって、サーバプロセスにより提供されるコンテンツをウェブブラウザにてウェブページとして表示するコンテンツ表示部と、プロキシサーバ機能を備えたウェブページプログラムをこのウェブブラウザに読み込んでウェブページプログラムに基づくウェブページを表示すると共にこのウェブページプログラムに備えられたプロキシサーバ機能による処理を実行するプロキシサーバ機能実行部とを備えたことを特徴としている。
【００１６】
このプロキシサーバ機能実行部は、ウェブブラウザにウェブページプログラムを読み込んだ際に、コンテンツ表示部から発行されたリクエスト及びコンテンツ表示部へ送られるリプライに対してウェブページプログラムを経由させてプロキシサーバ機能による処理を実行させるようにこのウェブブラウザのプロキシ設定を変更することを特徴とすることができる。そうすれば、ウェブブラウザのプロキシ設定をユーザが煩雑な手作業により行う必要がなくなる点で好ましい。
【００１７】
また、このコンテンツ表示部がウェブブラウザにてウェブページを表示するプロセスと、プロキシサーバ機能実行部がウェブブラウザにてウェブページプログラムに基づくウェブページを表示するプロセスとが同一とすることができる。この構成により、ユーザがプロキシサーバ機能を備えたウェブページプログラムに基づくウェブページであることを意識することなく、通常のホームページにアクセスする場合と同じ操作でこのウェブページ用のウィンドウを開き、プロキシサーバ機能を起動させることができるという効果がある。
【００１８】
また、本発明は、プロキシサーバの起動及び停止を制御するプロキシサーバ制御方法であって、ウェブブラウザを用いてウェブページとして表示可能であると共にウェブブラウザにて読み込まれることにより動作するプロキシサーバ機能を備えたウェブページプログラムをロードするステップと、サーバプロセスへのリクエスト及びサーバプロセスからのリプライに対してこのウェブページプログラムを経由させてプロキシサーバ機能による処理を実行させるようにウェブブラウザのプロキシ設定を変更するステップと、ウェブブラウザにてこのウェブページプログラムに基づくウェブページを表示するステップとを含むことを特徴としている。
【００１９】
ここで、ウェブブラウザのプロキシ設定の変更に先立って、変更前のプロキシ設定を保存するステップと、ウェブブラウザにて表示されたウェブページを閉じる際に、このウェブブラウザのプロキシ設定を保存されたプロキシ設定の状態に戻すステップとを更に含むことができる。そうすれば、このウェブページプログラムにて提供されるプロキシサーバ機能の使用を終了する際に、ユーザが煩雑な手作業でウェブブラウザのプロキシ設定を元に戻す必要がなくなる点で好ましい。
【００２０】
また、本発明は、ワールド・ワイド・ウェブベースのネットワークアプリケーションが動作するクライアントサーバシステムにおけるプロキシサーバ機能提供方法であって、ウェブブラウザを用いてウェブページとして表示可能であると共にウェブブラウザにて読み込まれることにより動作するプロキシサーバ機能を備えたウェブページプログラムをサーバにアップロードするステップと、任意のクライアントにこのウェブページプログラムをサーバからダウンロードし、ウェブブラウザに読み込んでウェブページを表示すると共に、プロキシサーバ機能を起動するステップとを含むことを特徴としている。ウェブページプログラムにプロキシサーバ機能を含めるため、所望の機能を持つプロキシサーバ機能（例えば自分用にカスタマイズされたウェブページを作成する等）を持つウェブページプログラムをアップロードしておけば、ウェブブラウザをインストールしたクライアントマシンからならアクセス権等を考慮することなく自由にウェブページプログラムをダウンロードしてプロキシサーバ機能を使用する（上の例では自分用にカスタマイズされたウェブページを見る）ことができる。
【００２１】
また、本発明は、コンピュータに実行させるプログラムをこのコンピュータの入力手段が読取可能に記憶した記憶媒体において、このプログラムは、プロキシサーバ機能を実現するプロキシサーバプログラムと、ウェブブラウザにて表示されるウェブページを構成すると共にこのウェブブラウザに読み込まれた際にプロキシサーバプログラムを起動する機能を備えたページデータとで構成されたことを特徴としている。尚、記憶媒体としてはＣＤ−ＲＯＭやフロッピーディスク等、その種類が問われることはなく、そのソフトウエアが販売される媒体としての記憶媒体を含むものである。
【００２２】
また、本発明は、コンピュータに実行させるプログラムをこのコンピュータの入力手段が読取可能に記憶した記憶媒体において、このプログラムは、サーバプロセスへのリクエスト及びサーバプロセスからのリプライに対するプロキシサーバ機能による処理と、ウェブブラウザに読み込まれた際に、このウェブブラウザにて表示されたウェブページから発行されたサーバプロセスへのリクエスト及びサーバプロセスからのリプライに対してプロキシサーバ機能による処理を実行させるようにウェブブラウザのプロキシ設定を変更する処理とをコンピュータに実行させることを特徴としている。この記憶媒体によれば、ウェブブラウザのプロキシ設定をユーザが煩雑な手作業により行う必要がなくなる点で優れている。尚、記憶媒体の種類を問わない点は前述と同様である。
【００２３】
また、本発明をプログラム伝送装置に適用すると、ウェブブラウザを用いてウェブページとして表示可能であると共にウェブブラウザにて読み込まれることにより動作するプロキシサーバ機能を備えたウェブページプログラムを記憶する記憶手段と、この記憶手段からウェブページプログラムを読み出してこのウェブページプログラムを送信する送信手段とを備えたことを特徴としている。このようなプログラム伝送装置により、プログラムの提供形態としてＣＤ−ＲＯＭ等の記憶媒体を介すことなく、顧客に対して本発明の技術を提供することが可能となる。
【００２４】
【発明の実施の形態】
以下、添付図面に示す実施の形態に基づいてこの発明を詳細に説明する。
図１は、本実施の形態におけるクライアントサーバシステムの全体構成を説明するための図である。同図において、符号１０はＷＷＷ（ワールド・ワイド・ウェブ）としてのサーバであり、ネットワーク３０に接続するための接続部１３とプログラムを格納する格納部１２とを備えている。また、当該格納部１２にプロキシサーバの機能を備えたウェブファイル１１をＷＷＷに対応したコンテンツとして登録し格納している。符号２０はクライアントであり、サーバ１０からウェブファイル１１をダウンロードし、ウェブブラウザを用いてその内容を表示することができる。これにより、ウェブブラウザをプロキシサーバの実行環境として使用可能である。符号３０はインターネットやイントラネット等のネットワークであり、サーバ１０とクライアント２０とを接続している。ネットワーク３０は広域ネットワーク（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）であっても構内ネットワーク（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）であっても良い。また、インターネットのように公開されたものでもアクセス権を制限したものでも構わない。またネットワーク３０上にファイアウォールが構築されているかどうかも不問である。また、符号４０は一般のＷＷＷコンテンツ（ホームページ等）を格納したＷＷＷサーバである。
【００２５】
また図１に示すように、サーバ１０に登録されたウェブファイル１１は、ウェブブラウザによりウェブページとして表示されるページデータ１１ａと、当該プロキシサーバの機能を提供するプロキシサーバプログラム１１ｂとで構成されている。ページデータ１１ａは例えばＨＴＭＬで記述される。ページデータ１１ａの内容には特に制限はなく、例えばプロキシサーバ機能を提供するページであることを示す内容や機能の内容を表示するようにしても良い。
【００２６】
プロキシサーバプログラム１１ｂの実現手段としては、ＨＴＴＰプロトコルをハンドリングできることが必要である。そのために、ウェブブラウザ上で動作しながらクライアントマシンのＴＣＰ／ＩＰのソケット通信ができる実装方法であれば良い。具体的には、Ｊａｖａアプレット、ＡｃｔｉｖｅＸコントロール、またはプラグインを用いてプロキシサーバプログラム１１ｂを作成することができる。ただし、Ｊａｖａアプレットによりプロキシサーバプログラム１１ｂを作成した場合、セキュリティ上の制限を受けるため単にアプレットとして作成しただけでは足りず、署名付きアプレット（Ｓｉｇｎｅｄ  ａｐｐｌｅｔ）として作成することが必要である。なぜなら、一般のＪａｖａアプレットはコードベースの制限のため、アプレットを使用するマシンは当該アプレットをダウンロードした相手のマシンとの間でしか通信できなくなる。しかし、署名付きアプレットとすることにより、この制限を解除することができるからである。以下、本実施の形態では、プロキシサーバプログラム１１ｂをＪａｖａアプレットにより作成した場合を例として説明する。
【００２７】
またウェブファイル１１は、ウェブブラウザにて当該ウェブページが表示される際にプロキシサーバプログラム１１ｂによるプロキシサーバ機能の使用に適した状態にウェブブラウザのプロキシ設定を変更している。更に、プロキシサーバプログラム１１ｂを起動し、当該ウェブページが破棄される際にウェブブラウザのプロキシ設定を元の状態に戻す機能を備えている。この機能は、プラグインやＡｃｔｉｖｅＸコントロールを用いたり、ウェブページ上のイベントハンドラとスクリプト言語（Ｊａｖａ  Ｓｃｒｉｐｔ）とを用いることによりページデータ１１ａに実装することができる。図１に示したウェブファイル１１のページデータ１１ａには、ウェブブラウザのプロキシ設定を変更するためのスクリプトコードが付加されている。この場合、ダウンロード終了と同時に呼ばれるハンドラ関数によって必要なプロキシ設定を行ってプロキシサーバプログラム１１ｂを起動し、ウェブページを閉じる際に呼ばれるハンドラ関数によって変更されたプロキシ設定を元の状態に戻すようにスクリプトを記述する。当該機能に基づく動作の詳細は後述する。
【００２８】
以上のように構成されたウェブファイル１１は、一般のホームページと同じようにサーバ１０にアップロードされてＷＷＷコンテンツとして格納される。そして、クライアント２０がサーバ１０にアクセスしてウェブファイル１１を通常のＷＷＷコンテンツと同様にＨＴＴＰ経由でダウンロードし、クライアント２０のウェブブラウザにてページデータ１１ａをウェブページとして表示することができる。そうすれば、上記各機能により、ウェブブラウザ上でプロキシサーバプログラム１１ｂのプロキシサーバ機能を使用できることとなる。すなわち、クライアント２０との関係においてサーバ１０は一般のＷＷＷサーバと同様であり、それ自体はプロキシサーバの機能を持たない。プロキシサーバプログラム１１ｂを含むウェブファイル１１がＷＷＷコンテンツであり、ＨＴＴＰ経由でサーバ１０からクライアント２０へダウンロードする。そのため、仮にクライアント２０がファイアウォール内に存在する場合であっても、ページデータ１１ａのウェブページを見ることさえできれば、当該ファイアウォールを超えてプロキシサーバプログラム１１ｂのプロキシサーバ機能を使用することができることとなる。新たなプロキシサーバ機能を提供する場合にも、当該機能を持つプロキシサーバプログラム１１ｂを含むウェブファイル１１を作成してサーバ１０にアップロードすればよい。
【００２９】
図２は、クライアント２０におけるプロキシサーバ機能の実行環境の構成を説明するための図である。クライアントマシン上ではオペレーティング・システム（ＯＳ）２１が動作し、オペレーティング・システム２１上でウェブブラウザ２２が動作している。ウェブブラウザ２２は、クライアントマシンの表示画面２３にウェブページを表示するためのウインドウ（以下、ウェブウインドウと称す）を開く。このウェブウインドウには、インターネット等のネットワークやＣＤ−ＲＯＭ等の各種のメディアを介して提供される種々のＷＷＷコンテンツがウェブページとして表示される。したがって、クライアント２０がネットワーク３０を介してサーバ１０に接続し、サーバ１０に格納されているプロキシサーバ機能を備えたウェブファイル１１をダウンロードすることにより、ウェブブラウザ２２はページデータ１１ａを他の一般のウェブページと全く同様に表示画面２３に表示することができる。
【００３０】
実際にプロキシサーバ機能を使用する場合には、図２に示すように、プロキシサーバ機能を使用する対象である一般のコンテンツを表示したウェブウインドウ２３ａと共に、サーバ１０からダウンロードされたウェブファイル１１のページデータ１１ａを表示するプロキシサーバ用ウェブウインドウ２３ｂの２種類のウェブウインドウが表示されることとなる。上述したように、ウェブファイル１１はウェブブラウザ２２に読み込まれてページデータ１１ａのウェブページを表示する際にプロキシサーバプログラム１１ｂを起動する。そのため、ユーザは所定のコンテンツを表示したウェブウインドウ２３ａから新たなウェブウインドウ２３ａを開く場合と同様に、リンクボタンをクリックする等の方法でウェブファイル１１のページデータ１１ａのウェブページを表示させる。これによってプロキシサーバプログラム１１ｂを起動し、更に必要なウェブブラウザ２２のプロキシ設定を自動的に行わせることができる。
【００３１】
図３は、図２のようにクライアントマシンの表示画面２３に一般のウェブウインドウ２３ａとプロキシサーバ用ウェブウインドウ２３ｂが表示されている状態でのＨＴＴＰリクエストの流れを説明する図である。また図４は、図２のようにクライアントマシンの表示画面２３に一般のウェブウインドウ２３ａとプロキシサーバ用ウェブウインドウ２３ｂが表示されている状態でのＨＴＴＰリプライの流れを説明する図である。ウェブファイル１１の機能により、プロキシサーバ用ウェブウインドウ２３ｂが開いた状態で、ウェブファイル１１に含まれるプロキシサーバプログラム１１ｂが動作している。また、ウェブウインドウ２３ａにはネットワーク３０を介して接続された他のサーバマシンに格納されたウェブファイル１１のコンテンツが表示されているものとする。
【００３２】
上述したように、ウェブファイル１１のページデータ１１ａには、ウェブブラウザ２２のプロキシ設定をプロキシサーバプログラム１１ｂによるプロキシサーバ機能の使用に適した状態に変更する機能が実装されている。これは、具体的には、ウェブウインドウ２３ａに表示されたウェブページを用いてユーザが行う操作、すなわち一般のＷＷＷサーバにより提供されるコンテンツとのやりとりであるＨＴＴＰリクエスト及びＨＴＴＰリプライに対して、プロキシサーバプログラム１１ｂを経由するような設定とすることである。このプロキシ設定の変更により、図３に示すように、ウェブウインドウ２３ａからＨＴＴＰリクエストが発行された場合、発行されたＨＴＴＰリクエストは、一旦プロキシサーバ用ウェブウインドウ２３ｂに埋め込まれているプロキシサーバプログラム１１ｂを経由した後にネットワーク３０へ送られる。同様に、ＨＴＴＰリクエストに対するリプライがサーバから送出されてネットワーク３０を介してクライアント２０が受信すると、当該ＨＴＴＰリプライは、まずプロキシサーバ用ウェブウインドウ２３ｂに埋め込まれているプロキシサーバプログラム１１ｂに送られる。そして、プロキシサーバの機能による処理を施された後、ウェブウインドウ２３ａに表示される。
【００３３】
ここで、プロキシサーバ機能は、プロキシサーバプログラム１１ｂによって提供されるので、プログラムの内容により、従来のプロキシサーバにより提供され得る種々の機能を用意することができる。例えば、リクエストの先取りによるプリフェッチ、オートパイロット、キャッシング等の機能や、コンテンツの横取りによるフィルタリング、すなわち内容の追加（プローブの埋め込み、ウイルスチェック等）や変更（翻訳、要約、語調変換等）、形式の調整や削除（グラフィックの削除、色数調整、不適切なリンクの削除等）等である。また、ウェブファイル１１がウェブブラウザ２２に読み込まれる前に、当該ウェブブラウザ２２のプロキシ設定が特定の状態になっていた場合がある。また、ウェブファイル１１のページデータ１１ａによるプロキシ設定の変更において、当該特定の状態のプロキシ設定を反映させることが必要な場合がある。例えば、図７に示すように、クライアント２０がファイアウォールの中にある場合のように、他のプロキシサーバによるサービスを享受している場合である。このときは、図８に示すように、ウェブウインドウ２３ａからの操作と当該他のプロキシサーバによる処理との間にウェブファイル１１のプロキシサーバプログラム１１ｂによる処理を入れなければならない。言い換えると、ＨＴＴＰリクエストは、プロキシサーバプログラム１１ｂによる処理を経た後で当該他のプロキシサーバを経て目的のＷＷＷサーバへ送られる。更に、ＷＷＷサーバから返されたＨＴＴＰリクエストは、当該他のプロキシサーバによる処理を経た後でプロキシサーバプログラム１１ｂを経てウェブブラウザ２２に送られるようにしなければならない。
【００３４】
次に、サーバ１０からクライアント２０へウェブファイル１１をダウンロードした際の動作について、図５のフローチャートを用いて説明する。
まず、プロキシサーバ用ウェブウインドウ２３ｂを開くコマンドが発行される（ブロック５０１）。このコマンドの発行は、上述したようにユーザが通常のコンテンツ用のウェブウインドウ２３ａを開く要領でリンクボタンをクリックすることにより行っても良い。また、アプリケーションプログラムの機能と連携して自動的に行っても良い（例えば、特定のコンテンツをウェブウインドウ２３ａに表示した場合に自動的に発行する等）。次に、このコマンドの発行に応じて、ウェブファイル１１がロードされる（ブロック５０２）。次に、ウェブブラウザ２２の各種設定を読み込み可能とするために、セキュリティ設定を行う（ブロック５０３）。そして、ウェブブラウザ２２の現在のプロキシ設定を読み取り（ブロック５０４）、保存する（ブロック５０５）。次に、保存したプロキシ設定をプロキシサーバプログラム１１ｂに渡し、プロキシサーバプログラム１１ｂを起動する（ブロック５０６）。保存したプロキシ設定をプロキシサーバプログラム１１ｂに渡すのは、上述したように、ウェブファイル１１の読み込み前にプロキシ設定がなされていた場合に、これを無視せずプロキシサーバプログラム１１ｂの動作に反映させるためである。次に、ＨＴＴＰリクエストを送出しＨＴＴＰリプライを受信する際に、ウェブブラウザ２２がプロキシサーバプログラム１１ｂを参照するように、ウェブブラウザ２２のプロキシ設定を変更する（ブロック５０７）。最後に、プロキシサーバ用の新しいウェブウインドウ２３ｂを開く（ブロック５０８）。
以上の動作のうち、ブロック５０３のセキュリティ設定からブロック５０７のプロキシ設定の変更までの動作が、ウェブファイル１１のページデータ１１ａに付加されたスクリプトやプラグイン、ＡｃｔｉｖｅＸコントロール等により実現される。具体例として、Ｊａｖａスクリプトで実現する場合は、Ｏｎ  Ｌｏａｄイベントハンドラで呼び出されるＪａｖａ  Ｓｃｒｉｐｔ関数にこれらの動作を実行する機能を実装する。
【００３５】
次に、プロキシサーバ用ウェブウインド２３ｂを閉じる際の動作について、図６のフローチャートを用いて説明する。まず、プロキシサーバ用ウェブウインド２３ｂを閉じるコマンドが発行される（ブロック６０１）。このコマンドの発行も、上述したプロキシサーバ用ウェブウインド２３ｂを開くコマンドと同様に、ユーザが通常のコンテンツ用のウェブウインドウ２３ａやその他のウインドウを閉じる場合と同様の操作により行っても良い。また、アプリケーションプログラムとの連携により自動的に行っても良い（例えば、プロキシサーバプログラム１１ｂによるプロキシサーバ機能を使用していたコンテンツのウェブウインドウ２３ａを閉じた場合に自動的に発行する等）。次に、このコマンドの発行に応じて、プロキシサーバ用ウェブウインドウ２３ｂを閉じ（ブロック６０２）、図５のブロック５０５の動作で保存されたプロキシ設定通りに、ウェブブラウザ２２のプロキシ設定を戻す（ブロック６０３）。
以上の動作のうち、ブロック６０３のプロキシ設定復元動作が、ウェブファイル１１のページデータ１１ａに付加されたスクリプトやプラグイン、ＡｃｔｉｖｅＸコントロール等により実現される。具体例として、Ｊａｖａスクリプトで実現する場合は、Ｏｎ  Ｕｎｌｏａｄイベントハンドラで呼び出されるＪａｖａ  Ｓｃｒｉｐｔ関数にこれらの動作を実行する機能を実装する。
【００３６】
サーバ１０からクライアント２０にダウンロードされるウェブファイル１１は、上述したように、ＨＴＭＬ等により記述されたページにＪａｖａアプレット、ＡｃｔｉｖｅＸコントロール、またはプラグインにより機能を付加された形態である。したがって、クライアント２０のウェブブラウザ２２は、一般のホームページを表示する場合と同様にウェブファイル１１のページデータ１１ａを表示する。すなわち、ウェブブラウザ２２によるウェブウインドウ２３ａの表示プロセスとプロキシサーバ用ウェブウインドウ２３ｂの表示プロセスとは同じである。したがって、ユーザは一般のホームページを表示する場合と同じ要領でプロキシサーバ用ウェブウインドウ２３ｂを開くという簡単な操作を行うだけで、プロキシサーバプログラム１１ｂの起動及び必要なプロキシ設定を自動的にプロキシサーバ機能を使用できることとなり、煩雑なプロキシ設定を行う必要がない。同様に、プロキシサーバ用ウェブウインドウ２３ｂを閉じるという簡単な操作を行うだけで、プロキシサーバプログラム１１ｂの起動時に変更されたプロキシ設定が自動的に変更前の状態に復元し、煩雑な作業を行う必要がない。更に、プロキシサーバ用ウェブウインドウ２３ｂにページデータ１１ａを表示されているウェブファイル１１のプロキシサーバプログラム１１ｂが動作することから、プロキシサーバ用ウェブウインドウ２３ｂに表示するページデータ１１ａを切り替えることにより、簡単に使用するプロキシサーバ機能を変更することができる。
【００３７】
図９は、プロキシサーバ機能の提供方法として、▲１▼サーバマシンによりプロキシサーバを用意する方法と、▲２▼クライアントマシン上でネイティブアプリケーションとして必要なプロキシサーバを動作させる方法と、▲３▼ウェブファイル１１によりプロキシサーバ機能を提供する方法とを比較するテーブルである。図９を参照して分かるように、本実施の形態では、▲３▼ウェブファイル１１をＷＷＷコンテンツとしてサーバ１０に登録するため、サーバマシンにおいてインストールや保守管理などの作業を行う必要がなく、プロキシサーバ機能を使用するためにプロキシサーバプロセスを起動する作業も必要ない。また、クライアントマシン上でプロキシサーバが動作するため、クライアントごとの個別な設定を行うことができる。また、クライアントマシンにウェブブラウザがあればプロキシサーバ機能を使用できる。そのため、クライアントマシンにおいて必要なプロキシサーバのアプリケーションをいちいちインストールしたりプロキシサーバプロセスを起動する作業が必要ない。さらに、クライアントマシンにおけるプロキシ設定の切り替えも、本実施の形態によればウェブファイル１１のダウンロードにしたがって自動的に行われるので、煩雑な手作業が必要ない。
【００３８】
図１０及び図１１は、本実施の形態を構成要素に含むネットワークシステムの例を説明するための図である。図１０に示すネットワークシステムにおいて、ネットワーク３０にはＷＷＷサーバ４０と、従来のプロキシサーバ５０と、クライアント２０ａ〜２０ｃとが接続されている。クライアント２０ｂ、２０ｃは、セキュリティ用のプロキシサーバ６０にて構築されるファイアウォールの内側にあり、プロキシサーバ６０を介してネットワーク３０に接続されている。プロキシサーバ６０はプロキシサーバ５０にアクセスする権限を持っていないものとする。この場合、図示のようにクライアント２０ａは、ＷＷＷサーバ４０のＷＷＷコンテンツへのアクセスにおいてプロキシサーバ５０により提供される機能を使用することができる。しかし、クライアント２０ｂ、２０ｃは、プロキシサーバ６０がプロキシサーバ５０へのアクセス権限を持っていないため、プロキシサーバ５０により提供される機能を使用することができない。
【００３９】
一方、図１１に示すネットワークシステムにおいて、ネットワーク３０にはＷＷＷサーバ４０と、サーバ１０と、クライアント２０ａ〜２０ｃとが接続されている。図１０の場合と同様に、クライアント２０ｂ、２０ｃは、セキュリティ用のプロキシサーバ６０にて構築されるファイアウォールの内側にあり、プロキシサーバ６０を介してネットワーク３０に接続されている。サーバ１０はＷＷＷサーバ４０と同様のＷＷＷサーバであるが、プロキシサーバ機能を備えたウェブファイル１１を格納している。この場合、サーバ１０はＷＷＷサーバであるため、クライアント２０ｂ、２０ｃからアクセスすることができ、サーバ１０に格納されているウェブファイル１１をダウンロードしてプロキシサーバ機能を使用することが可能である。すなわち、セキュリティ上の制約を何ら破ることなく、プロキシサーバ機能の提供という点においてファイアウォールを超えることができる。
【００４０】
図１２及び図１３は、本実施の形態の具体的な応用例を説明する図である。図１２において、クライアント２０には既にサーバ１０からウェブファイル１１がダウンロードされ、ウェブブラウザ２２によりプロキシサーバ用ウェブウインドウ２３ｂが表示されており、和文要約のプロキシ機能を使用できる状態となっている。また、ＷＷＷサーバ４０に格納されているＷＷＷコンテンツ（日本語コンテンツ）を表示するウェブウインドウ２３ａが表示されている。この状態で、ウェブウインドウ２３ａへの操作により発行されるＨＴＴＰリクエストは、図示のようにプロキシサーバ用ウェブウインドウ２３ｂに付随する和文要約のプロキシサーバプログラム１１ｂを経てＷＷＷサーバ４０に送られる。一方、ＷＷＷサーバ４０の日本語コンテンツは、図示のようにプロキシサーバ用ウェブウインドウ２３ｂに付随する和文要約のプロキシサーバプログラム１１ｂを経て、要約された形でウェブウインドウ２３ａに表示される。
【００４１】
ここで、要約された日本語コンテンツの見出しから、所望の英文サイトにアクセスしたとする。これに応じて、プロキシサーバの機能を切り替えるため、図１３に示すように、和文要約のプロキシサーバ機能を備えたウェブファイル１１のウェブページを表示していたプロキシサーバ用ウェブウインドウ２３ｂに、英語サイトを日本語に翻訳した上で要約する英日翻訳要約サービスを行うプロキシサーバ機能を備えたウェブファイル１１のウェブページを表示する。これにより、ウェブウインドウ２３ａへの操作により発行されるＨＴＴＰリクエストは、プロキシサーバ用ウェブウインドウ２３ｂに付随する英日翻訳要約のプロキシサーバプログラム１１ｂを経てＷＷＷサーバ４０に送られる。一方、ＷＷＷサーバ４０の英語コンテンツは、プロキシサーバ用ウェブウインドウ２３ｂに付随する英日翻訳要約のプロキシサーバプログラム１１ｂを経て、日本語に翻訳されかつ要約された形でウェブウインドウ２３ａに表示される。
【００４２】
更に、日本語に翻訳され要約された当該英語コンテンツの全文の日本語訳を読もうとする場合、英日翻訳要約サービスのプロキシサーバ機能を備えたウェブファイル１１のウェブページを表示していたプロキシサーバ用ウェブウインドウ２３ｂに、英語サイトを日本語に翻訳する英日翻訳サービスを行うプロキシサーバ機能を備えたウェブファイル１１のウェブページを表示する。これにより使用するプロキシサーバ機能が切り替わり、当該英語コンテンツの全文の日本語訳がウェブウインドウ２３ａに表示される。
【００４３】
本実施の形態による他の具体的な応用例を説明する。
所定のユーザが外出した先で所望のプロキシサーバを使用しようとする場合を考える。従来のプロキシサーバの場合、相手先のコンピュータがプロキシサーバへのアクセス権を持っているとは限らないため、確実にプロキシサーバを使用するためには当該プロキシサーバをインストールしたコンピュータを携帯しなければならない。また仮に、相手先のコンピュータがプロキシサーバへのアクセス権を持っている場合であっても、プロキシサーバを使用するための煩雑なプロキシ設定作業を行わなければならい。
【００４４】
これに対し、本実施の形態では、上述したように、ウェブファイル１１はサーバ１０からクライアント２０へＨＴＴＰ経由でダウンロードされるため、ウェブブラウザを実装したクライアントマシンであれば、何ら制限なくウェブファイル１１により提供されるプロキシサーバ機能を使用することができる。また今日では、コンピュータにウェブブラウザがインストールされていることが一般的なので、大抵のコンピュータでプロキシサーバ機能を使用できることとなる。かかる利点を利用すれば、例えば自分用にカスタマイズされたウェブページを作成するというような自分用の固有のプロキシサーバ機能を備えたウェブファイル１１をサーバ１０にアップロードして登録しておけば、任意のコンピュータから、アクセス権等を考慮することなく自由にプロキシサーバ機能を使用して、自分用にカスタマイズされたウェブページを見るといった使い方ができる。
【００４５】
【発明の効果】
以上説明したように、本発明によれば、ネットワークアプリケーションがプロキシサーバの機能を必要とした際に、簡単な操作で迅速にプロキシサーバ機能を使用でき、プロキシサーバ機能の使用後は簡単な操作で迅速に当該機能の使用前の状態に戻すことにより、プロキシサーバ機能を簡単かつ自在に切り替えて使用することができる。
【００４６】
また、プロキシサーバ機能を提供するためにサーバマシンにかかる負荷を削減し、かつ新たなプロキシサーバ機能の提供にも柔軟かつ迅速に対応することができる。
【図面の簡単な説明】
【図１】本実施の形態におけるクライアントサーバシステムの全体構成を説明するための図である。
【図２】クライアント２０におけるプロキシサーバ機能の実行環境の構成を説明するための図である。
【図３】プロキシサーバ機能の起動時のＨＴＴＰリクエストの流れを説明する図である。
【図４】プロキシサーバ機能の起動時のＨＴＴＰリプライの流れを説明する図である。
【図５】ウェブファイル１１のダウンロード時におけるクライアント２０の動作を説明するフローチャートである。
【図６】プロキシサーバ用ウェブウインドウ２３ｂを閉じる際のクライアント２０の動作を説明するフローチャートである。
【図７】ウェブブラウザ２２がに所定のプロキシ設定が既になされている状態を説明する図である。
【図８】図７の状態でウェブファイル１１によるプロキシサーバ機能を起動した場合に必要なプロキシ設定の内容を説明する図である。
【図９】プロキシサーバ機能の提供方法を比較するものである。
【図１０】ネットワーク上にファイアウォールが存在する場合のプロキシサーバの使用態様について、従来のプロキシサーバを例示して説明する図である。
【図１１】本実施の形態におけるネットワーク上にファイアウォールが存在する場合のプロキシサーバの使用態様について説明する図である。
【図１２】本実施の形態の具体的な応用例を説明する図であり、和文要約のプロキシ機能を提供するウェブページを開いた状態を説明する図である。
【図１３】本実施の形態の具体的な応用例を説明する図であり、英日翻訳要約のプロキシ機能を提供するウェブページを開いた状態を説明する図である。
【符号の説明】
１０…サーバ、１１…ウェブファイル、１１ａ…ページデータ、１１ｂ…プロキシサーバプログラム、２０…クライアント、２１…オペレーションシステム（ＯＳ）、２２…ウェブブラウザ、２３…表示画面、２３ａ…ウェブウインドウ、２３ｂ…プロキシサーバ用ウェブウインドウ、３０…ネットワーク（通信ネットワーク）、４０…ＷＷＷサーバ、５０、６０…プロキシサーバ
【図１】
0003565490.tif 000002
【図２】
0003565490.tif 000003
【図３】
0003565490.tif 000004
【図４】
0003565490.tif 000005
【図５】
0003565490.tif 000006
【図６】
0003565490.tif 000007
【図７】
0003565490.tif 000008
【図８】
0003565490.tif 000009
【図９】
0003565490.tif 000010
【図１０】
0003565490.tif 000011
【図１１】
0003565490.tif 000012
【図１２】
0003565490.tif 000013
【図１３】
0003565490.tif 000014