最初に、モジュール mod_proxy_connect を使用して行うことができる https を使用して配信するオリジン サーバー上のコンテンツへのアクセスについて話しているのではないことを明確にしたいと思います。
私が望むのは、クライアントとプロキシ間の安全な接続です。また、実際に要求されたオリジンが安全でない標準の http サーバーによって提供される場合も同様です。
私はApache 2.2を使用していますが、Apacheでこれを可能にしたいと考えています。
Wireshark を使用していくつかのリクエストを傍受し、次の点に注意しました。
URL http://example.com/fileの通常の http は次のようになります。
オリジンサーバーへの接続時:
GET /file HTTP 1.1
Host: example.com
ホスト情報は実際のリクエストから取り除かれ、代わりにホスト ヘッダーが提供されることに注意してください (名前付き仮想ホストでサーバー側で処理できます)。
リクエストがプロキシ サーバーを通過する場合は、わずかに異なるように見えます。
プロキシ サーバーへの接続時:
GET http://example.com/file HTTP 1.1
Host: example.com
リクエスト行には、実際にはプロトコルとホスト名を含む完全な URL が含まれていることに注意してください。ホスト ヘッダーはおそらく冗長です。バスの RFC を正しく読むと、HTTP 1.1 で必要になります。
したがって、ポート443でリッスンするApache Webサーバーをセットアップし、sslエンジンと証明書を使用して仮想ホストを有効にし、ホスト名にバインドしないことを考えています。
Apache が ssl と通信できるようにする必要があると思いますが、証明書の共通名は、プロキシ サーバーの IP アドレスへの接続行で指定されたホストと一致しません。
私がやりたいことは現在の標準でも可能ですか?もしそうなら、どうすればそれを行うことができますか?