Я пытаюсь использовать отдельный файл конфигурации с именем «rewritemaps.config», который содержит URL-адреса, которые я хочу перенаправить. Файл находится в корневом каталоге (там же, где находится файл web.config). Формат файла Redirects.config, который у меня есть:
<rewriteMaps>
<rewriteMap name="Redirects">
<add key="aspx/drvmain.aspx"
value="http://www.newdomain.com/folder2/page2.aspx" />
<add key="aspx/jobs_AboutUs.aspx"
value="http://www.newdomain.com/folder1/jobs.aspx" />
<add key="aspx/page.aspx"
value="http://www.newdomain.com/folder1/page2.aspx" />
</rewriteMap>
</rewriteMaps>
В моем файле web.config у меня есть:
<system.webServer>
<rewrite>
<rewriteMaps configSource="rewritemaps.config" />
<rules>
<rule name="Redirect rules">
<match url=".*" />
<conditions>
<add input="{Redirects:{REQUEST_URI}}" pattern="(.+)" />
</conditions>
<action type="Redirect" redirectType="Permanent"
url="{C:1}" appendQueryString="false" />
</rule>
</rules>
</rewriteMaps>
</rewrite>
</system.webServer>
В диспетчере IIS (который, да, я установил модуль перезаписи URL-адресов) я даже протестировал правило и условие для одного из моих URL-адресов в файле redirects.config, и он говорит, что он работает. Но затем, когда я пытаюсь перейти по URL-адресу в своем браузере, он не перенаправляется, как я указал. В файле rewritemaps.config я попытался указать полный домен и попытался использовать «/» перед aspx. Кажется, ничего не работает. Я не уверен, что мне здесь не хватает.