Модуль IIS URL Rewrite поставляется с 3 встроенными функциями :
* ToLower - returns the input string converted to lower case.
* UrlEncode - returns the input string converted to URL-encoded format. This function can be used if the substitution URL in rewrite rule contains special characters (for example non-ASCII or URI-unsafe characters).
* UrlDecode - decodes the URL-encoded input string. This function can be used to decode a condition input before matching it against a pattern.
Функции могут быть вызваны с использованием следующего синтаксиса:
{function_name: any_string}
Вопрос: можно ли расширить этот список, введя функцию Replace , которая доступна для изменения значений в действии или условии правила перезаписи?
Другой способ сформулировать вопрос : есть ли способ выполнить глобальную замену URL-адреса, поступающего с использованием этого модуля?
Кажется, что вы ограничены использованием регулярных выражений и обратных ссылок для построения строк - т.е. нет механизма поиска / замены для замены каждого экземпляра X на Y в {REQUEST_URI}, без , зная, сколько существует экземпляров.
Я быстро взглянул на расширяемость представил в 2.0 RTW и не вижу никаких «легких» способов представить это.