Маршрутизация запросов приложений (ARR) IIS 7 пробелов в URL

Я использую AAR для обратного прокси-запросов к установке слияния. Это отлично работает, когда URL-адрес не содержит пробелов. Как только пространство добавляется к URL-адресу, запрос возвращает 404, 404, похоже, происходит от IIS, а не от экземпляра Confluence.

Я включил трассировку неудачного запроса, как описано здесь: http://learn.iis.net/page.aspx/488/using-failed-request-tracing-rules-to-troubleshoot-application-request-routing-arr/

на запросы это возвращает 404 модуль AAR, похоже, не срабатывает, в журналах нет информации об этом. Я проверил это на страницах, которые возвращают 200, и я вижу, что перезапись работает правильно.

почему AAR не обрабатывает URL-адреса с пробелами в них? Мое правило обратного прокси-сервера соответствует всему:

(.*)

и у меня нет условий, применимых к правилу.

2 ответов


вам нужно разрешить двойной побег.

перейдите в IIS - > выберите узел сервера - > фильтрация запросов - > изменить параметры функции... - >Отметьте "разрешить двойной побег"

Это решает вашу проблему с слиянием и пробелами в URL-адресах.


вы также можете использовать командную строку

%windir%\system32\inetsrv\appcmd set config "веб-сайт по умолчанию" - раздел:Система.веб-сервер / безопасность/requestfiltering-allowDoubleEscaping: true