WinHTTP AutoProxy サポート

プロキシ設定の構成を容易にするために、WinHTTP 5.1 では、Web プロキシ自動検出 (WPAD) プロトコル (autoproxy とも呼ばれます) が実装されています。

AutoProxy の概要

WinHTTP を使用して HTTP 要求を送信するアプリケーションとコンポーネントでは、プロキシ構成が正しく設定されていることを確認する必要があります。 クライアントに直接インターネット接続がない限り、HTTP 要求は通常、クライアントのローカル ネットワークをインターネットに接続する Web プロキシ サーバーを介して送信する必要があります (たとえば、企業 LAN 上の Web クライアントの場合など)。 サーバー ベースのアプリケーションの場合、プロキシ構成は通常、WinHTTP ProxyCfg.exe ユーティリティを使用してサーバーの管理者によって管理されます。 サーバー管理者はプロキシ サーバーの名前を事前に認識し、ProxyCfg.exeを使用して、WinHTTP が参照できるレジストリにこの設定を記録します。 ただし、クライアント デスクトップ エンド ユーザーに WinHTTP プロキシ設定を手動で構成するよう要求することは問題です。 エンド ユーザーがプロキシ サーバーの名前を知らない可能性があります。エンド ユーザーにProxyCfg.exe ユーティリティの実行を要求することは、organizationのサポート負担になる可能性があります。 優れたユーザー エクスペリエンスをサポートするには、Web 対応クライアント アプリケーションで、ユーザーの介入なしにプロキシ構成を決定する必要があります。

WinHTTP ベースのアプリケーションのプロキシ設定の構成を容易にするために、WinHTTP では Web プロキシ自動検出 (WPAD) プロトコル (多くの場合 、autoproxy と呼ばれます) が実装されるようになりました。 これは、エンド ユーザーがプロキシ サーバーを手動で指定しなくてもプロキシ構成を自動的に検出するために Web ブラウザーが実装するプロトコルと同じです。 この機能は、Windows 2000 Service Pack 3、Windows XP Service Pack 1、Windows Server 2003 の WinHTTP バージョン 5.1 以降で使用できます。 Microsoft Internet エクスプローラー と Microsoft WinHTTP の両方で WPAD がサポートされていますが、この仕様は "Internet-Draft" ステージを超えて進行せず、2001 年 5 月に期限切れになることに注意してください。

WPAD プロトコルは次のように機能します。

  1. DHCP または DNS ネットワーク プロトコルを使用して、プロキシ自動構成 (PAC) ファイルの URL が検出されます。 URL は、クライアントのローカル ネットワーク上の PAC ファイルを識別します。 WinHTTP では、"http:" と "https:" PAC URL のみがサポートされます。たとえば、"file:" URLS はサポートされていません。

  2. PAC ファイルがダウンロードされ、必要に応じてクライアントのコンピューターにキャッシュされます。 PAC ファイルは、ターゲット ホスト名と URL を指定して 1 つ以上のプロキシ サーバーの一覧を生成する実行可能スクリプトです。 WinHTTP では、ECMAScript ベースの PAC ファイルのみがサポートされます。

  3. 各 HTTP 要求で、パラメーターとして渡された HTTP 要求のホスト名と URL を使用して、PAC スクリプト コードが実行されます。 WinHTTP は、PAC スクリプト コードに FindProxyForURL という関数を次の形式で含める必要があります。

  4. FindProxyForURL( url, host );
    

    この関数は、要求を送信するために HTTP クライアントで使用できる 1 つ以上のプロキシ サーバーの一覧を計算します。 PAC スクリプトは、HTTP クライアントがプロキシ サーバーを経由せずに直接ターゲット サーバーに到達できると判断した場合、特別な戻り値を使用してこれを示します。

AutoProxy トピック