Перейти к основному содержанию
 

Drupal 8 - URL Rewrite Module Error - The server variable "HTTP_PROXY" is not allowed to be set.

Drupal 8

Лечим ошибку:

HTTP Error 500.50 URL Rewrite Module Error - The server variable "HTTP_PROXY" is not allowed to be set. Add the server variable name to the allowed server variable list.

drupal

Данная ошибка проявляется при запуске drupal 8 на веб сервере IIS с установленным модулем URL Rewrite 2.1. Не уверен в точности версии, но на старом модуле URL Rewrite такая ошибка не проявляется, а в новом - есть. Собственно, это не баг а фича. Проблему вызывает наличие следующего кода в файле web.config:

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

Для использования серверных переменных теперь требуется их явно разрешить. Про это можно почитать здесь:

https://www.drupal.org/node/2783079

Открываем IIS, выбираем сайт drupal 8, Входим в URL Rewrite.

drupal

Посмотрим правило Erase HTTP_PROXY. Edit.

drupal

Видим, что правило использует серверную переменную HTTP_PROXY. Двойным щелчком откроем и скопируем переменную.

drupal

Cancel - выходим отсюда и кликаем на сервер.

drupal

Входим в URL Rewrite.

drupal

Нажимаем справа View Server Variables...

drupal

Нажимаем справа Add.

drupal

И добавляем нашу серверную переменную HTTP_PROXY. OK.

drupal

Переменная добавлена. Ошибка исправлена.

Теги

Комментарии