
プロキシを使用しているときに、カスタム ヘッダーをホストに送信したいです。以下の例をご覧ください。例を使用して状況を説明すると、より簡単になります。
これは期待どおりに正常に動作します:
curl https://www.cloudflare.com/
ホストの IP アドレスを curl に指定して DNS の使用を回避することを選択した場合:
curl http://198.41.214.163/
ウェブサイトにこのエラーページが表示されます -->
「直接 IP アクセスは許可されません。CloudFlare ネットワークの一部である IP アドレスをリクエストしました。有効なホストヘッダーを指定する必要があります 目的のウェブサイトにアクセスします。」
正しいホスト ヘッダー名を指定すると、DNS を使用せずに再び正常に動作するようになります。
curl --header "Host: cloudflare.com" http://198.41.214.163/
しかし、プロキシトンネルを使用しているときに同じことを行うと、curlはヘッダーをホストに送信しないので、「直接 IP アクセスは許可されていません" ホストからのエラー:
curl --proxy "http://PROXY_IP:PORT" --header "Host: cloudflare.com" http://198.41.214.163/
この問題をどうしたら克服できるでしょうか?
答え1
--proxy-header
この問題は、プロキシ サーバー用のヘッダーを指定するためのパラメーターが導入された cURL 7.37.0 で解消されるはずです-H
。/で指定されたヘッダーは--header
、現在「エンド サーバーのみ」として表示されます。