Ответ 1
Двоичный код для Url Rewrite расположен по адресу:
%SystemRoot%\system32\inetsrv\rewrite.dll
Url Rewrite 1.1 имеет версию файла 7.1.490.43
.
Url Rewrite 2.0 имеет версию файла 7.1.761.0
или 7.1.871.0
(могут быть и другие, но это две разные версии, о которых я знаю).
Если у вас нет доступа к консоли для проверки номера версии, попробуйте запустить следующий код на простой веб-странице:
Assembly a = Assembly.Load("Microsoft.Web.Iis.Rewrite, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35");
Response.Write(a.FullName);
Если UrlRewrite 2.0 установлен, вы увидите что-то вроде:
Microsoft.Web.Iis.Rewrite, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
Если это не так, вы получите исключение:
Не удалось загрузить файл или сборку "Microsoft.Web.Iis.Rewrite, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35" или одна из его зависимостей. Система не может найти указанный файл.
Вы также можете указать их на этой странице документации:
В этом параграфе довольно ясно, что trackAllCaptures
- это особый параметр 2.0, и если он не работает, то 2.0 определенно не установлен:
В модуле URL Rewrite 2.0 можно изменить способ индексирования групп захвата. Включение параметра
trackAllCaptures
в коллекции<conditions>
позволяет группам захвата формировать все согласованные условия, доступные через обратные ссылки.