allowPathInfo
(AllowPathInfoForScriptMappings
до IIS7) - для обработчиков, таких как CGI или WSGI, которые используют переменную среды PATH_INFO, как указано в спецификации CGI, только с концевыми частями пути, переданными в PATH_INFO.
IIS по умолчанию неправильно устанавливает PATH_INFO для всего пути, включая часть, которая уже сохранена в SCRIPT_NAME, что приведет к путанице во всем, что зависит от стандартной интерпретации переменной. ASP, с другой стороны, хочет установить «плохой» параметр.
Приведенный выше пример выглядит немного вводящим в заблуждение. Это было бы, когда у вас был скрипт /example/example.cgi/foo
: SCRIPT_NAME всегда будет /example/example.cgi
; PATH_INFO должен быть /foo
, но если allowPathInfo не установлен, вы получите все /example/example.cgi/foo
.
Кстати, если вы включите allowPathInfo
, IIS получит правильное значение PATH_INFO ... но теперь значение PATH_TRANSLATED неверно. Вздох.