この章では、Proxy Server が要求を処理する方法について説明します。また、特定のリソースにプロキシを有効にする方法についても説明します。この章では、URL を異なる URL またはサーバーにルーティングするように Proxy Server を設定する方法についても説明します。
この章の内容は次のとおりです。
リソースに対してプロキシを有効または無効にできます。リソースは個々の URL、共通の要素を含む URL のグループ、またはプロトコル全体を指します。プロキシをサーバー全体、さまざまなリソース、またはテンプレートファイルに指定されたリソースに対して有効にするかどうかを制御できます。そのリソースに対するプロキシを無効にすることで、1 つ以上の URL へのアクセスを拒否できます。この設定はリソースに対するすべてのアクセスを拒否または許可するグローバルな方法です。また、URL フィルタを使用してリソースへのアクセスを許可または拒否することもできます。URL フィルタについては、「URL のフィルタリング」を参照してください。
サーバーマネージャーにアクセスし、「Routing」タブをクリックします。
「Enable/Disable Proxying」リンクをクリックします。
「Enable/Disable Proxying」ページが表示されます。
ドロップダウンリストからリソースを選択するか、「Regular Expression」ボタンをクリックして正規表現を入力し、「了解」をクリックします。
指定したリソースに対してデフォルト設定を選択できます。
「Use Default Setting Derived From A More General Resource」:このリソースを含むより一般的なリソースに対する設定が、このリソースに使用されます。
「Do Not Proxy This Resource」:プロキシを通じてこのリソースに到達できなくなります。
「Enable Proxying Of This Resource」:クライアントはプロキシを通じてこのリソースにアクセスできるようになります (クライアントがその他のセキュリティーおよび認証チェックをパスした場合)。リソースに対するプロキシを有効にした場合、すべてのメソッドが有効になります。GET、HEAD、INDEX、POST、SSL トンネリングのための CONNECT を含む読み込みメソッド、および PUT、MKDIR、RMDIR、MOVE、DELETE を含む書き込みメソッドはすべて、そのリソースに対して有効になります。その他のセキュリティーチェックを禁止し、すべてのクライアントは読み込みおよび書き込みアクセス権を持ちます。
[了解]をクリックします。
「Restart Required」をクリックします。
「Apply Changes」ページが表示されます。
「Restart Proxy Server」ボタンをクリックして、変更を適用します。
「Set Routing Preferences」ページは、派生したデフォルト設定または直接の接続を使用して、あるいはプロキシ配列、隣接 ICP、別のプロキシサーバー、または SOCKS サーバーを通じて特定のリソースをルーティングするように Proxy Server を設定する場合に使用します。
サーバーマネージャーにアクセスし、「Routing」タブをクリックします。
「Set Routing Preferences」リンクをクリックします。
「Set Routing Preferences」ページが表示されます。
ドロップダウンリストからリソースを選択するか、「Regular Expression」ボタンをクリックして正規表現を入力し、「了解」をクリックします。
設定を行うリソースに使用するルーティングタイプを選択します。
利用できるオプションは次のとおりです。
「Derived Default Configuration」:Proxy Server は、リモートサーバーまたは別のプロキシを使用すべきかどうかを判断する場合、より汎用的なテンプレートつまり、正規表現に一致する短いテンプレートを使用します。たとえば、プロキシが http://.* の要求をすべて別のプロキシサーバーにルーティングし、http://www.* の要求をすべてリモートサーバーにルーティングする場合、http://www.example.* の要求に対して派生するデフォルト設定のルーティングを作成できます。この要求は http://www.* テンプレートの設定に基づき、直接リモートサーバーに移動します。
「Direct Connections」:要求はプロキシを経由せず、常に直接リモートサーバーに移動します。
「Route Through A SOCKS Server」:指定されたリソースの要求は、SOCKS サーバーを経由してルーティングされます。このオプションを選択した場合、プロキシサーバーが経由する SOCKS サーバーの名前または IP アドレスとポート番号を指定します。
「Route Through」:プロキシ配列、隣接 ICP、親配列、またはプロキシサーバーを経由してルーティングするかどうかを指定できます。ここで複数のルーティング方法を選択した場合、プロキシはフォームに示される階層 (すなわち、プロキシ配列、リダイレクト、ICP、親配列、別のプロキシ) に従って移動します。プロキシサーバーを経由したルーティングについては、「プロキシサーバーの連鎖」を参照してください。
SOCKS サーバーを経由したルーティングについては、「SOCKS サーバーを経由したルーティング」を参照してください。プロキシ配列、親配列、または隣接 ICP を経由したルーティングについては、第 12 章キャッシュを参照してください。
443 以外のポート上での接続要求のルーティングを有効にするには、obj.conf ファイルの ppath パラメータを connect://.* に変更する必要があります。
[了解]をクリックします。
「Restart Required」をクリックします。
「Apply Changes」ページが表示されます。
「Restart Proxy Server」ボタンをクリックして、変更を適用します。
リモートサーバーにアクセスする代わりに、プロキシから一部のリソース用の別のプロキシにアクセスするように設定できます。連鎖はファイアウォールの背後で複数のプロキシを構成する便利な方法です。また、連鎖により階層キャッシュを構築することもできます。
サーバーマネージャーにアクセスし、「Routing」タブをクリックします。
「Set Routing Preferences」リンクをクリックします。
「Set Routing Preferences」ページが表示されます。
ドロップダウンリストからリソースを選択するか、「Regular Expression」ボタンをクリックして正規表現を入力し、「了解」をクリックします。
同じページの「Routing Through Another Proxy」セクションの「Route Through」オプションを選択します。
「Another Proxy」チェックボックスを選択します。
「Another Proxy」フィールドに、経由するプロキシサーバーの名前とポート番号を入力できます。
次の形式でサーバーの名前とポート番号を入力します。servername:port
[了解]をクリックします。
「Restart Required」をクリックします。
「Apply Changes」ページが表示されます。
「Restart Proxy Server」ボタンをクリックして、変更を適用します。
ネットワーク上ですでにリモート SOCKS サーバーが稼働している場合、このリモート SOCKS サーバーに接続して特定のリソースにアクセスするようにプロキシを設定できます。
サーバーマネージャーにアクセスし、「Routing」タブをクリックします。
「Set Routing Preferences」リンクをクリックします。
「Set Routing Preferences」ページが表示されます。
ドロップダウンリストからリソースを選択するか、「Regular Expression」ボタンをクリックして正規表現を入力し、「了解」をクリックします。
同じページの「Routing Through Another Proxy」セクションの「Route Through」オプションを選択します。
「Route Through SOCKS Server」オプションを選択します。
プロキシサーバーが経由する SOCKS サーバーの名前または IP アドレスとポート番号を指定します。
[了解]をクリックします。
「Restart Required」をクリックします。
「Apply Changes」ページが表示されます。
「Restart Proxy Server」ボタンをクリックして、変更を適用します。
SOCKS サーバーを経由したルーティングを有効にした場合、「SOCKS v5 Routing」ページを使用してプロキシの経路を作成する必要があります。プロキシの経路から、プロキシが経由する SOCKS サーバーからアクセス可能な IP アドレスが特定されます。またプロキシの経路では、SOCKS サーバーが直接ホストに接続するかどうかも指定されます。
「Forward Client Credentials」ページは、クライアント証明をリモートサーバーに送信するようにプロキシを設定する場合に使用します。
サーバーマネージャーにアクセスし、「Routing」タブをクリックします。
「Forward Client Credentials」リンクをクリックします。
「Forward Client Credentials」ページが表示されます。
ドロップダウンリストからリソースを選択するか、「Regular Expression」ボタンをクリックして正規表現を入力し、「了解」をクリックします。
転送オプションを設定します。
「Client IP Addressing Forwarding」:Proxy Server は、ドキュメントを要求する場合、クライアントの IP アドレスをリモートサーバーに送信しません。その代わり、プロキシがクライアントとして機能し、IP アドレスをリモートサーバーに送信します。ただし、次の場合には、ユーザーがクライアントの IP アドレスを渡した方がよい場合があります。
プロキシが内部プロキシの連鎖の 1 つである場合。
クライアントが、クライアントの IP アドレスの取得に依存するサーバーにアクセスする必要がある場合。クライアントの IP アドレスを特定のサーバーにのみ送信する場合は、テンプレートを使用できます。
オプションを設定し、クライアントの IP アドレスを送信するようにプロキシを設定します。
「Client Proxy Authentication Forwarding」:オプションを設定し、クライアント認証の詳細を送信するようにプロキシを設定します。
「Default」:Proxy Server がクライアント認証の詳細を転送できるようにします。
「Blocked」:プロキシによるクライアント認証の詳細の転送を許可しません。
「Enabled Using HTTP Header」:認証の詳細を転送する場合に使用するプロキシの HTTP ヘッダーを指定できます。
「Client Cipher Forwarding」:オプションを設定し、リモートサーバーにクライアントの SSL/TLS 暗号化方式群の名前を送信するようにプロキシを設定します。
「Default」:Proxy Server が、リモートサーバーにクライアントの SSL/TLS 暗号化方式群の名前を転送できるようにします。
「Blocked」:プロキシが、リモートサーバーにクライアントの SSL/TLS 暗号化方式群の名前を転送するのを許可しません。
「Enabled Using HTTP Header」:リモートサーバーにクライアントの SSL/TLS 暗号化方式群の名前を転送する場合に使用するプロキシの HTTP ヘッダーを指定できます。デフォルトの HTTP ヘッダーの名前は Proxy-cipher ですが、選択したどのヘッダーでもクライアントの SSL/TLS 暗号化方式群の名前を送信できます。
「Client Keysize Forwarding」:オプションを設定し、リモートサーバーにクライアントの SSL/TLS キーのサイズを送信するようにプロキシを設定します。
「Default」:Proxy Server が、リモートサーバーにクライアントの SSL/TLS キーのサイズを転送できるようにします。
「Blocked」:プロキシが、リモートサーバーにクライアントの SSL/TLS キーのサイズを転送するのを許可しません。
「Enabled Using HTTP Header」:リモートサーバーにクライアントの SSL/TLS キーのサイズを転送する場合に使用するプロキシの HTTP ヘッダーを指定できます。デフォルトの HTTP ヘッダーの名前は Proxy-keysize ですが、選択したどのヘッダーでもクライアントのSSL/TLS キーのサイズを送信できます。
「Client Secret Keysize Forwarding」:オプションを設定し、リモートサーバーにクライアントの SSL/TLS 秘密鍵のサイズを送信するようにプロキシを設定します。
「Default」:Proxy Server が、リモートサーバーにクライアントの SSL/TLS 秘密鍵のサイズを転送できるようにします。
「Blocked」:プロキシが、リモートサーバーにクライアントの SSL/TLS 秘密鍵のサイズを転送するのを許可しません。
「Enabled Using HTTP Header」:リモートサーバーにクライアントの SSL/TLS 秘密鍵のサイズを転送する場合に使用するプロキシの HTTP ヘッダーを指定できます。デフォルトの HTTP ヘッダーの名前は Proxy-secret-keysize ですが、選択したどのヘッダーでもクライアントのSSL/TLS 秘密鍵のサイズを送信できます。
「Client SSL Session ID Forwarding」:オプションを設定し、リモートサーバーにクライアントの SSL/TLS セッション ID を送信するようにプロキシを設定します。
「Default」:Proxy Server が、リモートサーバーにクライアントの SSL/TLS セッション ID を転送できるようにします。
「Blocked」:プロキシが、リモートサーバーにクライアントの SSL/TLS セッション ID を転送するのを許可しません。
「Enabled Using HTTP Header」:リモートサーバーにクライアントのSSL/TLS セッション ID を転送する場合に使用するプロキシの HTTP ヘッダーを指定できます。デフォルトの HTTP ヘッダーの名前は Proxy-ssl-idですが、選択したどのヘッダーでもクライアントの SSL/TLS セッション ID を送信できます。
「Client Issuer DN Forwarding」:オプションを設定し、リモートサーバーにクライアントの SSL/TLS 証明書の発行者の識別名を送信するようにプロキシを設定します。
「Default」:Proxy Server が、リモートサーバーにクライアントの SSL/TLS 証明書の発行者の識別名を転送できるようにします。
「Blocked」:プロキシが、リモートサーバーにクライアントの SSL/TLS 証明書の発行者の識別名を転送するのを許可しません。
「Enabled Using HTTP Header」:リモートサーバーにクライアントの SSL/TLS 証明書の発行者の識別名を転送する場合に使用するプロキシの HTTP ヘッダーを指定できます。デフォルトの HTTP ヘッダーの名前は Proxy-issuer-dn ですが、選択したどのヘッダーでもクライアントのSSL/TLS 証明書の発行者の名前を送信できます。
「Client User DN Forwarding」:オプションを設定し、リモートサーバーにクライアントの SSL/TLS 証明書のサブジェクト識別名を送信するようにプロキシを設定します。
「Default」:Proxy Server が、リモートサーバーにクライアントの SSL/TLS 証明書のサブジェクトの識別名を転送できるようにします。
「Blocked」:プロキシが、リモートサーバーにクライアントの SSL/TLS 証明書のサブジェクト識別名を転送するのを許可しません。
「Enabled Using HTTP Header」:リモートサーバーにクライアントの SSL/TLS 証明書のサブジェクトの識別名を転送する場合に使用するプロキシの HTTP ヘッダーを指定できます。デフォルトの HTTP ヘッダーの名前は Proxy-user-dn ですが、選択したどのヘッダーでもクライアントの SSL/TLS 証明書のサブジェクトの名前を送信できます。
「Client SSL/TLS Certificate Forwarding」:オプションを設定し、リモートサーバーにクライアントの SSL/TLS 証明書を送信するようにプロキシを設定します。
「Client Cache Information Forwarding」:いずれかのオプションを選択し、ローカルのキャッシュのヒットに関する情報を送信するようにプロキシを設定します。
「Set Basic Authentication Credentials」:オプションを設定し、HTTP 要求を送信するようにプロキシを設定します。
「User」:認証するユーザーを指定します。
「Password」: ユーザーのパスワードを指定します。
「Using HTTP Header」:資格の伝達に使用するプロキシの HTTP ヘッダーを指定できます。
[了解]をクリックします。
「Restart Required」をクリックします。「Apply Changes」ページが表示されます。
「Restart Proxy Server」ボタンをクリックして、変更を適用します。
ネットワークのセキュリティーを維持するために、特定の IP アドレスに対してアクセスを制限する機能がクライアント側に設定されている場合があります。クライアントがこの機能を使用できるように、Proxy Server では Java IP アドレスの確認をサポートしています。
クライアント側で Java IP アドレスを確認することにより、Proxy Server に照会した IP アドレスを使用してリソースを再ルーティングできるようになります。Java アプレットでは DNS のなりすましがよく発生するため、クライアントはこの機能を利用して配信元サーバーの正しい IP アドレスを確認できます。
この機能が有効な場合、Proxy Server は宛先の配信元サーバーに接続するために使用された IP アドレスをヘッダーに追加します。たとえば、この機能が有効になっていて、要求に「Pragma: dest-ip」ヘッダーが含まれている場合、Proxy Server は「Dest-ip:」ヘッダーの値を配信元サーバーの IP アドレスとして追加します。
Java IP アドレスの確認に使用されるサーバーアプリケーション関数 (SAF) については、『Sun Java System Web Proxy Server 4.0.8 Configuration File Reference』の「ObjectType」の java-ip-check を参照してください。
サーバーマネージャーにアクセスし、「Routing」タブをクリックします。
「Check Java IP Address」リンクをクリックします。
「Check Java IP Address」ページが表示されます。
ドロップダウンリストからリソースを選択するか、「Regular Expression」ボタンをクリックして正規表現を入力し、「了解」をクリックします。
Java IP アドレスの確認を有効にするか、無効にするか、またはデフォルト設定を使用します。
デフォルトオプションでは、より汎用的なテンプレートから、派生するデフォルト設定を使用します。つまり、正規表現に一致する短いテンプレートを使用して Java IP アドレスの確認を有効にするか、無効にするかを決定します。
[了解]をクリックします。
「Restart Required」をクリックします。
「Apply Changes」ページが表示されます。
「Restart Proxy Server」ボタンをクリックして、変更を適用します。
Proxy Server が多くのクライアントをサポートする場合、クライアントの自動設定ファイルを使用して、すべてのブラウザクライアントを設定できます。自動設定ファイルには、さまざまな URL にアクセスする場合、ブラウザが使用するプロキシがあれば、どのプロキシを使用するかを決定する JavaScriptTM 関数が含まれています。この機能については、第 17 章クライアント自動設定ファイルの使用を参照してください。
Proxy Server のコンピュータは、ネットワークから接続または切断できます。この機能により、デモンストレーションに使用するポータブルコンピュータに簡単にプロキシをインストールできます。
プロキシがネットワークから切断されると、ドキュメントは直接キャッシュから返されます。プロキシは最新状態チェックを行わないため、ドキュメントを高速に取得できます。ただし、ドキュメントは最新の状態ではない可能性があります。キャッシュについては、第 12 章キャッシュを参照してください。
ネットワークに接続していない場合、Proxy Server がネットワークからの切断を認識し、リモートサーバーへの接続も試みないため、接続がハングすることはありません。このネットワークなしの設定は、ネットワークが停止していて、Proxy Server コンピュータは稼働している場合に使用できます。ネットワークから切断された状態でプロキシを実行した場合、結果的にアクセスするのはキャッシュ内の古いデータになります。また、ネットワークから切断されたプロキシを実行する場合、プロキシのセキュリティー機能は不要になります。
Proxy Server では、次の 4 つのネットワーク接続モードを用意しています。
通常モードは、プロキシの通常の動作モードです。プロキシはドキュメントがまだキャッシュにない場合、コンテンツサーバーから取得します。ドキュメントがキャッシュにある場合、ドキュメントはコンテンツサーバーに照合され、最新のドキュメントかどうかを判断します。キャッシュ内のファイルが変更された場合、そのファイルは最新のコピーに置き換えられます。
Fast-demo モードでは、ネットワークが利用できる場合に、デモンストレーションをスムーズにすることができます。キャッシュ内にドキュメントがある場合、コンテンツサーバーへの接続は行われず、ドキュメントが変更されたかどうかも確認されません。このモードでは、コンテンツサーバーからの応答を待機することにより生じる遅延を回避できます。キャッシュ内にドキュメントがない場合、ドキュメントはコンテンツサーバーから取得され、キャッシュされます。Fast-demo モードは、通常モードよりも遅延が少なくなりますが、古いデータを返す場合があります。これはドキュメントのコピーが一度作成されると、そのドキュメントの最新状態チェックが行われないためです。
No-network モードは、ポータブルコンピュータが、ネットワークに接続されていない間を意図したモードです。プロキシは、ドキュメントがキャッシュにある場合はドキュメントを返し、キャッシュにない場合はエラーを返します。プロキシはコンテンツサーバーとの接続を試みません。このため、プロキシが存在しない接続の取得を試みる間にタイムアウトになることがありません。
サーバーマネージャーにアクセスし、「Routing」タブをクリックします。
「Set Connectivity Mode」リンクをクリックします。「Set Connectivity Mode」ページが表示されます。
ドロップダウンリストからリソースを選択するか、「Regular Expression」ボタンをクリックして正規表現を入力し、「了解」をクリックします。
必要なモードを選択します。
[了解]をクリックします。
「Restart Required」をクリックします。「Apply Changes」ページが表示されます。
「Restart Proxy Server」ボタンをクリックして、変更を適用します。
FTP には FTP サーバーとクライアント間でデータ接続を確立する 2 つの方法があります。プロキシはクライアントとして機能します。この 2 つのモードは、PASV モード FTP と PORT モード FTP と呼ばれます。
パッシブモード (PASV):データ接続は Proxy Server により開始され、FTP サーバーが接続を受け入れます。このモードは、インバウンド接続を受け入れる必要がないため、Proxy Server を実行するサイトではセキュリティーが向上します。
アクティブモード (PORT):データ接続はリモート FTP サーバーにより開始され、プロキシが受信接続を受け入れます。Proxy Server がファイアウォール内にある場合、ファイアウォールは FTP サーバーから送信される FTP データ接続をブロックする可能性があります。これは PORT モードが機能していない可能性があることを意味します。
FTP サイトの中にはファイアウォールを実行しているものがあり、その場合、PASV モードはプロキシサーバーに対して機能しなくなります。このため、Proxy Server では PORT モード FTP を使用するように設定することができます。サーバー全体に対して PORT モードをオンにするか、特定の FTP サーバーに対してのみ PORT モードをオンにできます。
PASV モードがオンの場合でも、リモート FTP サーバーが PASV モードをサポートしていなければ、Proxy Server は PORT モードを使用します。
Proxy Server がファイアウォールの背後にあり、PORT モード FTP が機能しない場合、PORT モードを有効にすることはできません。リソースにデフォルトが選択されている場合、Proxy Server はより汎用的なリソースのモードを使用します。何も指定されていない場合、PASV モードが使用されます。
サーバーマネージャーにアクセスし、「Routing」タブをクリックします。
「Set FTP Mode」リンクをクリックします。「Set FTP Mode」ページが表示されます。
ドロップダウンリストからリソースを選択するか、「Regular Expression」ボタンをクリックして正規表現を入力し、「了解」をクリックします。
FTP 転送モードを選択します。
[了解]をクリックします。
「Restart Required」をクリックします。「Apply Changes」ページが表示されます。
「Restart Proxy Server」ボタンをクリックして、変更を適用します。
アウトバウンド接続が SOCKS サーバーを経由するようにプロキシを設定している場合、SOCKS で使用されるネームサーバーの IP アドレスを明示的に指定する必要があります。
ネームサーバーの IP アドレスを指定する必要があるのは、ファイアウォール内の内部 DNS サービス以外の DNS サーバーで、外部ホスト名を解決する場合です。
サーバーマネージャーにアクセスし、「Routing」タブをクリックします。
「Set SOCKS Name Server」リンクをクリックします。
「Set SOCKS Name Server」ページが表示されます。
フィールドに DNS ネームサーバーの IP アドレスを入力します。
[了解]をクリックします。
SOCKS ネームサーバーの IP アドレスを指定するための機能は、かつて SOCKS_NS 環境変数からのみアクセスできました。環境変数を設定し、「SOCKS Name Server Setting」フォームからネームサーバーの IP アドレスを指定する場合、プロキシは環境変数ではなく、フォームに指定された IP アドレスを使用します。
「Restart Required」をクリックします。
「Apply Changes」ページが表示されます。
「Restart Proxy Server」ボタンをクリックして、変更を適用します。
「Configure HTTP Request Load Balancing」ページは、指定された配信元サーバー間で負荷を分散するために使用します。
サーバーマネージャーにアクセスし、「Routing」タブをクリックします。
「Configure HTTP Request Load Balancing」リンクをクリックします。
「Configure HTTP Request Load Balancing」ページが表示されます。
ドロップダウンリストからリソースを選択するか、「Regular Expression」ボタンをクリックして正規表現を入力し、「了解」をクリックします。
「Server」フィールドで、配信元サーバーの URL を指定します。複数のサーバーパラメータが指定されている場合、Proxy Server は指定された配信元サーバー間で負荷を分散します。
「Sticky Cookie」フィールドに、Cookie 名を指定します。この Cookie 名が応答内に表示されると、以降の要求からはその配信元サーバーに接続されます。デフォルト値は JSESSIONID です。
「Sticky Parameter」フィールドに、経路情報を検査するための URI パラメータ名を指定します。URI パラメータが要求 URI に表示され、その値にコロンが含まれ、そのあとに経路 ID が続く場合、要求はその経路 ID で特定される配信元サーバーに「固定」されます。デフォルト値は jsessionid です。
「Route Header」フィールドに、経路 ID が配信元サーバーと通信するために使用される HTTP 要求のヘッダー名を指定します。デフォルト値は proxy-jroute です。
「Route Cookie」フィールドに、応答でスティッキー Cookie があったときに Proxy Server により生成されるクッキーの名前を指定します。
「Rewrite Host」オプションを設定し、サーバーパラメータにより指定されるホストと一致するようにホスト HTTP 要求のヘッダーを書き換えるかどうかを指定します。
「Rewrite Location」オプションを設定して、サーバーパラメータに一致する位置 HTTP 応答ヘッダーを書き換えるかどうかを指定します。
「Rewrite Content Location」オプションを設定して、サーバーパラメータに一致する Content-location HTTP 応答ヘッダーを書き換えるかどうかを指定します。
サーバーパラメータに一致する headername HTTP 応答ヘッダーを書き換えるかどうかを指定します。ここで headername はユーザー定義のヘッダー名です。「Headername」フィールドにヘッダー名を指定します。
[了解]をクリックします。
「Restart Required」をクリックします。
「Apply Changes」ページが表示されます。
「Restart Proxy Server」ボタンをクリックして、変更を適用します。
サーバーマネージャーでは、時にミラーサーバーと呼ばれる別のサーバーに URL をマッピングできます。クライアントがミラー化された URL でプロキシにアクセスする場合、プロキシは要求されたドキュメントを URL に指定されたサーバーからではなく、ミラー化されたサーバーから取得します。クライアントは、要求が別のサーバーに送られることを認識しません。また URL をリダイレクトすることも可能です。この場合、プロキシはリダイレクトされた URL のみをクライアントに返し、ドキュメントを返さないため、クライアントは新しいドキュメントを要求できます。またマッピングを使用すると、PAC マッピングや PAT マッピングと同様に、ファイルに URL をマップできます。
URL をマッピングするには、URL プレフィックスとマッピング先を指定します。次の節では、さまざまな種類の URL のマッピングについて説明します。次の種類の URL のマッピングを作成できます。
通常のマッピングは、URL プレフィックスを別の URL プレフィックスにマップします。 たとえば、プロキシが http://www.example.com で始まる要求を取得する場合は常に、特定の URL に移動するようにプロキシを設定できます。
逆マッピングは、リダイレクトされる URL プレフィックスを別の URL プレフィックスにマップします。逆マッピングは、内部サーバーがドキュメントをプロキシに送信するのではなく、リダイレクトされた応答を送信する場合に、逆プロキシとともに使用されます。詳細は、第 14 章逆プロキシの使用を参照してください。
正規表現は、式に一致するすべての URL を 1 つの URL にマップします。たとえば、.*job.* に一致するすべての URL を特定の URL、たとえば、ユーザーが ProxyServer を使用して特定の URL を表示できない理由を説明する URL にマップします。
クライアントの自動設定は、URL を Proxy Server に格納された特定の .pac ファイルにマップします。自動設定ファイルについては、第 17 章クライアント自動設定ファイルの使用を参照してください。
プロキシ配列テーブル (PAT) は、URL を Proxy Server に格納された特定の .pat ファイルにマップします。このタイプのマッピングは、マスタープロキシからのみ作成することをお勧めします。PAT ファイルとプロキシ配列については、「プロキシ配列を経由したルーティング」を参照してください。
URL にアクセスするクライアントは、同じサーバー上または別のサーバー上の異なる場所に送られます。リソースを移動した場合、または末尾にスラッシュを付けずにディレクトリにアクセスするとき、関連するリンクの整合性を維持する必要がある場合に、この機能が役立ちます。
たとえば、hi.load.com と呼ばれる負荷の高い Web サーバーを、mirror.load.com と呼ばれる別のサーバーにミラー化する場合を考えてみます。hi.load.com コンピュータに移動する URL については、mirror.load.com コンピュータを使用するように Proxy Server を設定できます。
ソース URL プレフィックスのエスケープを解除する必要がありますが、宛先 (ミラー) URL では、HTTP 要求内の禁止文字のみエスケープする必要があります。
プレフィックスでは、決して末尾にスラッシュを使用しないでください。
サーバーマネージャーにアクセスし、「URLs」タブをクリックします。
「Create Mapping」リンクをクリックします。
「Create Mapping」ページが表示されます。
作成するマッピングの種類を選択します。
「Regular Mappings」:このオプションを選択した場合、ページ下部に次のオプションが表示されます。
「Rewrite Host」:to パラメータで指定されたホストに一致するように Host HTTP ヘッダーを書き換えるかどうかを指定します。
「Reverse Mappings」:リダイレクトされる URL プレフィックスを別の URL プレフィックスにマップします。このオプションを選択した場合、ページ下部に次のオプションが表示されます。
「Rewrite Content Location」:コンテンツ位置 HTTP 応答ヘッダーを書き換えるかどうかを指定します。
「Rewrite Headername」:headername HTTP 応答ヘッダーを書き換えるかどうかを指定するチェックボックスを選択します。headername はユーザー定義のヘッダー名。
「Regular Expressions」:式に一致するすべての URL を 1 つの URL にマップします。正規表現の詳細については、第 16 章テンプレートとリソースの管理を参照してください。
「Client Autoconfiguration」:URL を Proxy Server に格納された特定の .pac ファイルにマップします。自動設定ファイルについては、第 17 章クライアント自動設定ファイルの使用を参照してください。
「Proxy Array Table (PAT)」: URL を Proxy Server に格納された特定の .pat ファイルにマップします。このタイプのマッピングは、マスタープロキシからのみ作成することをお勧めします。PAT ファイルとプロキシ配列については、第 12 章キャッシュの「プロキシ配列を経由したルーティング」を参照してください。
マップソースのプレフィックスを入力します。
通常マッピングと逆マッピングの場合、このプレフィックスは置き換える URL の一部になります。
正規表現マッピングの場合、URL プレフィックスは一致させるすべての URL を表す正規表現である必要があります。また、マッピングにテンプレートを選択する場合、正規表現はテンプレートの正規表現内の URL についてのみ機能します。
クライアントの自動設定マッピングとプロキシ配列テーブルマッピングの場合、URL プレフィックスは、クライアントがアクセスする完全な URL になります。
マップ先を入力します。
クライアントの自動設定およびプロキシ配列テーブルを除くすべてのマッピングの場合、この宣言はマップ先の完全な URL になります。クライアントの自動設定マッピングの場合、この値は Proxy Server のハードディスク上にある .pac ファイルへの絶対パスになります。プロキシ配列テーブルマッピングの場合、この値はマスタープロキシのローカルディスク上にある .pat ファイルへの絶対パスになります。
ドロップダウンリストからテンプレート名を選択します。あるいはテンプレートを適用しない場合は、値を「NONE」のままにします。
「了解」をクリックし、マッピングを作成します。
「Restart Required」をクリックします。
「Apply Changes」ページが表示されます。
「Restart Proxy Server」ボタンをクリックして、変更を適用します。
サーバーマネージャーにアクセスし、「URLs」タブをクリックします。
「View/Edit Mappings」リンクをクリックします。
「View/Edit Mappings」ページが表示されます。
マッピングを編集するには、マッピングの横に表示される「Edit」リンクをクリックします。プレフィックス、マップされた URL、およびマッピングの影響を受けるテンプレートを編集できます。[OK]をクリックして変更を適用します。
「Restart Required」をクリックします。「Apply Changes」ページが表示されます。
「Restart Proxy Server」ボタンをクリックして、変更を適用します。
サーバーマネージャーにアクセスし、「URLs」タブをクリックします。
「View/Edit Mappings」リンクをクリックします。
「View/Edit Mappings」ページが表示されます。
削除するマッピングを選択して、マッピングの横に表示される「Remove」リンクをクリックします。
「Restart Required」をクリックします。「Apply Changes」ページが表示されます。
「Restart Proxy Server」ボタンをクリックして、変更を適用します。
ドキュメントを取得して返すのではなく、リダイレクトされた URL をクライアントに返すように Proxy Server を設定できます。リダイレクトにより、クライアントは最初に要求された URL が別の URL にリダイレクトされたことを認識します。クライアントは通常は、すぐにリダイレクトされた URL を要求します。Netscape Navigator は自動的にリダイレクトされた URL を要求します。ユーザーが再度、明示的にドキュメントを要求する必要はありません。
URL のリダイレクトは、ユーザーをアクセスが拒否された理由が説明されている URL にリダイレクトできるため、ある領域へのアクセスを拒否する場合に便利です。
サーバーマネージャーにアクセスし、「URLs」タブをクリックします。
「Redirect URLs」リンクをクリックします。「Redirect URLs」ページが表示されます。
ソース URL、つまり URL プレフィックスを入力します。
リダイレクト先の URL を入力します。この URL は URL プレフィックスか固定 URL のいずれかになります。
リダイレクト先 URL として URL プレフィックスを使用する場合、URL プレフィックスフィールドの横のラジオボタンを選択して、URL プレフィックスを入力します。
固定 URL を使用する場合、「Fixed URL」フィールドの横のラジオボタンを選択して、固定 URL を入力します。
[了解]をクリックします。
「Restart Required」をクリックします。
「Apply Changes」ページが表示されます。
「Restart Proxy Server」ボタンをクリックして、変更を適用します。