Перейти к основному контенту
Поддержка
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.

Симптомы

При использовании функции IIS общий интерфейс шлюза (CGI) для размещения в исполняемый файл, используйте библиотеку определенных для перенаправления запросов запросы могут быть доставлены неверному адресату на основании присутствие заголовка запроса «ПРОКСИ». Для использования этой библиотеки известны несколько веб-приложений платформы. К ним относятся PHP, Python и Go, среди прочих.

Причина

CGI — это интерфейс, позволяющий веб-сервера для размещения приложений, которые выполняются как исполняемые процессы. Когда веб-сервер получает запрос, сервер запускает новый процесс для обработки одного запроса. Когда запрос выполнен, выходом из процесса. В порядке процесса имеют доступ к данным запроса заголовки запроса включаются как переменные среды, которые были «HTTP_» в названии. Поэтому процессы CGI для запросов, содержащих заголовок, который называется «Прокси» имеют переменную среды «HTTP_PROXY», который имеет то же значение заголовка запроса.

Перелистывание командной строки и библиотеки обычно используется для включения различных приложениях для выполнения запросов для различных типов серверов, включая веб-серверы. Эту библиотеку можно настроить с помощью параметров командной строки, или он может считывать его параметры конфигурации из переменных среды хоста процесса. «HTTP_PROXY» является одним из многих параметров конфигурации, используемых Перелистывание. «HTTP_PROXY» перелистывание используется для отправки запроса HTTP через настроенный прокси-сервер.

Примечание. Это не связано с «HTTP_PROXY» как представление заголовка запроса клиента.

Если перелистывание размещается в процесс CGI, процесс содержит переменную среды с именем «HTTP_PROXY», перелистывания использует его значение для отправки запрошенных данных через HTTP-прокси, значение которого указывается в переменной среды. Это происходит, так как перелистывание ожидает, что «HTTP_PROXY» является директива конфигурации, а не заголовка запроса клиента.

Временное решение

Чтобы обойти эту проблему, не используйте CGI на сервере, на котором выполняется IIS. CGI — во многом устаревший интерфейс, который заменяется на более новые и более производительность связанных интерфейсов. В частности PHP, Python и перейти должны размещаться через FastCGI в IIS. FastCGI не использовать переменные среды для заголовков запросов клиента и данной проблемы не существует. Однако для PHP, некоторые приложения могут использовать функции getenv() PHPs для извлечения переменных среды. Даже когда PHP не размещается внутри процесс CGI, он реплицирует поведение CGI путем введения значений заголовков запроса в набор данных, чтобы его функция getenv() . При использовании приложения PHP, получающий HTTP_PROXY таким образом, остаются в силе следующие способы снижения опасности, очистка значения заголовка или отклонение запросов с прокси-сервера заголовок.

Если необходимо использовать CGI для какой-либо причине, блокировать запросы, содержащие заголовок запроса с именем «Прокси» или очистите значение заголовка.  Это потому, что «Прокси» не является именем заголовка стандартных запросов и обозреватели обычно не будет отправлять его.

Для блокировки запроса, содержащего заголовок (предпочтительным решением) прокси-сервера, выполните следующую команду:

appcmd набора конфигурации /section:requestfiltering или + requestlimits.headerLimits. [заголовок = «прокси», sizelimit = "0"]
Примечание. Appcmd.exe обычно не находится в пути и может быть найден в каталоге %systemroot%\system32\inetsrv

Чтобы очистить значение заголовка, можно использовать следующее правило перезаписи URL-адреса:

<system.webServer>    <rewrite>
<rules>
<rule name="Erase HTTP_PROXY" patternSyntax="Wildcard">
<match url="*.*" />
<serverVariables>
<set name="HTTP_PROXY" value="" />
</serverVariables>
<action type="None" />
</rule>
</rules>
</rewrite>
</system.webServer>


Примечание. Измените URL-адрес загрузки надстройки в IIS и не включается по умолчанию при установке IIS.

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×