Я хочу отправлять пользовательские заголовки на хост при использовании прокси. Взгляните на примеры ниже. Объяснить ситуацию с примерами было проще.
Это работает отлично, как и ожидалось:
curl https://www.cloudflare.com/
Когда я решаю не использовать DNS, передавая IP-адрес хоста curl:
curl http://198.41.214.163/
Сайт выдает мне эту страницу с ошибкой -->
"Прямой IP-доступ не разрешен.Вы запросили IP-адрес, который является частью сети CloudFlare.Необходимо предоставить действительный заголовок хоста. чтобы попасть на нужный сайт."
Если мы укажем правильное имя заголовка хоста, он снова будет работать нормально без использования 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
Эта проблема должна исчезнуть с cURL 7.37.0, который ввел --proxy-header
параметр для указания заголовков, предназначенных для прокси-сервера. Заголовки, указанные с -H
/ --header
, теперь будут рассматриваться как "только для конечного сервера".