追加された行はこのように表示されます。削除された行はこのように表示されます。Tool|http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winhttp/http/proxycfg_exe__a_proxy_configuration_tool.asp]サイトの翻訳です。Tool|http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winhttp/http/proxycfg_exe__a_proxy_configuration_tool.asp]なんてサイトを参考にした翻訳もどき。proxyの環境設定ツールであるProxyCfg.exeの使い方を説明したものです。(WinHTTP)を使用したProxy経由でHTTPとHTTPSサーバにアクセスする方法は2通りあります。(SDK)に含まれているProxy設定ユーティリティを使用して外部のアプリケーションからデフォルトのProxy設定を指定することができます。アプリケーションやスクリプトを使ってProxy情報を設定することができます。WinHTTPのAPIを使用してプログラムを書くのであれば、これから紹介するProxy設定を変更する2つのテクニックのうちの1つを利用することができます。&#61548;WinHttpOpen関数を使用します。第2引数でアクセスタイプを、第3引数でProxy名を、第4引数でバイパスリストを指定します。以下のサンプルは、WinHttpOpen関数を使用してProxy情報を設定する方法を示しています。0);&#61548;WinHttpSetOption関数を使用します。WINHTTP_OPTION_PROXYフラグは、WINHTTP_PROXY_INFO構造体でProxy設定を指定することを可能にします。以下のサンプルは、WinHttpSetOption関数を使用してProxy情報を設定する方法を示しています。sizeof(proxyInfo));オブジェクトを使用してスクリプトやアプリケーションを書くなら、Proxy設定を変更するために以下の方法も使用することができます。&#61548;SetProxyメソッドを使用します。第1引数にアクセスタイプを、第2引数にProxy名を、第3引数にバイパスリストを指定します。以下のサンプルは、スクリプトでSetProxyメソッドを使用してProxy情報を設定する方法を示しています。"*.microsoft.com");デフォルト設定を指定したり、SetProxyメソッドやWinHttpSetOption関数のどちらかを使用する必要性を排除したりするためには、Proxy環境設定ユーティリティを使用します。このユーティリティを使用することで、アプリケーションがネットワークに直接アクセスするか、Proxy経由でアクセスするか、バイパスリストを指定することで直接アクセスさせたりProxy経由でアクセスさせたりの組み合わせとするか、のどれかを指定することができます。APIに対してWINHTTP_ACCESS_TYPE_DEFAULTフラグを渡したときの設定だけに対して作用します。WinHttpRequestオブジェクトは、デフォルトで、Proxy環境設定ツールで設定した値を使用します。ExplorerのProxy設定ではありません。Proxyの環境設定はできません。Explorerの設定を変更しません。Note:Proxy設定が正しくなくて、WinHTTPを使用してHTTPリクエストを送信することを試みた場合、エラーが発生します。Parameters以下の表は、ProxyCfg.exeツールで使用することができるコマンドラインパラメータです。Proxy設定が表示されます。ヘルプが表示されます。WinHTTPアプリケーションがProxyを使用せずに直接ネットワークにアクセスすることを指定します。Proxyサーバを指定します。オプションでProxyを使用せずにアクセスするサーバのリスも指定することができます。Proxy設定を使用するように指定します。Explorerが自動Proxy設定の自動検出になっているか、自動設定のURLを使用してProxy設定をしている場合、このパラメータは、動作しません。Proxy設定を使用するように指定します。Proxy.exeが以前使用されていなかった場合だけ、動作します。ProxyCfg.exeがインストールされているなら、uパラメータを指定してマニュアル設定を使用するように指定してください。Explorerが自動Proxy設定の自動検出になっているか、自動設定のURLを使用してProxy設定をしている場合、このパラメータは、動作しません。文字列長に限定されて範囲で、複数のProxyを指定することができます。Proxyリストは、Proxyにアクセスするために使用するポート番号を含めることができます。ある特定のプロトコル用のProxyリストを指定するには、<protocol>=http://<proxy_name>という書式で指定する必要があります。指定可能なプロトコルは、HTTPとHTTPです。Proxyのリストを指定する正しい文字列は、http=http://http_proxy:80となります。http_proxxy_nameにはProxyサーバの名前を指定し、80はProxyにアクセスするために使用するポート番号を指定します。Proxyがプロトコルのデフォルトのポート番号を使用するのであれば、ポート番号を省略することができます。あるProxyがProxy名だけの指定でリストに定義されていた場合、それを、プロトコルを指定しない全てのプロトコルでデフォルトProxyとして使用することができます。other_proxyと指定した場合、http_proxyを任意のHTTP操作に対して使用し、proxy_otherをHTTPSプロトコルに対して使用します。Proxyバイパスリストに、IPアドレスやローカルのマシンで名前解決できるホスト名を使用することができます。このリストは、“*”といったワイルドカードを使用することができます。これは、Proxyサーバをバイパスする宛先アドレスに、(例えば)“*.microsoft.com”や“*.org”といった指定したパターンに一致するアドレスをバイパスさせるといったことができるようにします。ワイルドカード文字は、リストの中のいちばん左端である必要があります。“aaa.*”といった指定はサポートしていません。複数のアドレスやホスト名の一覧を指定するには、Proxyバイパス文字列の中で、空白やセミコロンで区切る必要があります。<local>を指定した場合、バイパス機能は、ピリオドを含まない任意のホスト名へのアクセスをバイパスします。Warning:ProxyCfg.exeを実行した後は、以前のProxy設定を復元することはできません。全体のProxy設定を削除することができます。UsageProxy環境設定ツールを使用するためには、コマンドプロンプト画面を開き、適切なコマンドラインパラメータを指定してProxy環境設定ユーティリティを実行する必要があります。例1:外部リソースに対してだけProxyを使用する以下のコマンド例は、最も一般的なProxyCfg.exeの使用例です。いう名前のProxyサーバを使用し、ピリオドを含まないホスト名だけの指定のときはProxyサーバを使用しないように設定します。いう名前のProxyサーバを使用するように指定します。バイパスリストを指定しません。Proxy経由でHTTPSサーバにアクセスするように指定します。ローカルのイントラネットサイトと、*.microsoft.comドメインの任意のサイトに対しては、Proxyをバイパスするように指定します。"<local>;*.microsoft.com"ProxyCfg.exeを削除するProxy環境設定ツールを使用した後は、以前のProxy設定に復元することはできません。必要であれば、ユーティリティが作成したレジストリ設定を削除することができます。ProxyCfg.exeが作成したレジストリ全てを削除するためには、以下のレジストリキーからWinHttpSettings値を削除する必要があります。Settings\Connections\WinHttpSettingsこのキーを削除すると、全てのProxy設定を削除することができます。ProxyCfg.exeと認証Proxy環境設定ユーティリティは、デフォルト認証ポリシーを設定します。信用されていないホストでは、NTLM認証を実行することができません。デフォルトでは、NTLM認証は、Proxyバイパスリスト上のホストに対してだけ自動で実行されます。Proxyを使用していないなら、NTLM認証の実行を信用するホストのバイパスリストを指定するためにProxyCfg.exeを使用することができます。この目的でProxyCfg.exeを使用するときは、Proxy名が必要となります。実際のProxy名の場所には任意の有効な文字を使うことができます。Policyを参照してください。Host暗号化証明書にまつわるトラブル2009/2/8NAP管理者用メモ(管理者のみ)たーきょんのメモ。