Назад | Перейти на главную страницу

IIS web.config Старый URL-адрес для перенаправления нового URL-адреса

Я новичок в перенаправлениях, и мне трудно заставить их работать, у меня есть около 1400 URL-адресов со старого сайта, которые необходимо перенаправить на новый сайт, с тем же доменным именем, но с разными папками и строками домена. Вот то, что у меня сейчас не работает, любая помощь приветствуется.

Спасибо

<rule name="Redirect0001" patternSyntax="ExactMatch" stopProcessing="true">
                    <match url="www.sitename.com/index.html/_10_12_Slotted_Screwdriver_Bit_2_long?SCREEN=product_ordering&amp;ScreenID=2464&amp;ProductID=952" />                 
                    <conditions>
                        <add input="{HTTP_HOST}{REQUEST_URI}" pattern="www.sitename.com/index.html/_10_12_Slotted_Screwdriver_Bit_2_long?SCREEN=product_ordering&amp;ScreenID=2464&amp;ProductID=952" />
                    </conditions>
                    <action type="Redirect" url="http://www.sitename.com/items.aspx?category=Screwdriver+Bits%2c+Nutsetters+%26+Holders&amp;id=203" />  
                </rule>

Пару вещей.

  1. Вы хотите сопоставить вещи только после / в URL-адресе соответствия
  2. Вы не хотите включать строку запроса в URL-адрес соответствия

Итак, попробуйте это правило. Соответствует, начиная с index.html/... и использует строку запроса в условиях соответствия.

<rule name="Redirect0001" patternSyntax="ExactMatch" stopProcessing="true">
    <match url="index.html/_10_12_Slotted_Screwdriver_Bit_2_long" />
    <conditions logicalGrouping="MatchAll">
        <add input="{QUERY_STRING}" pattern="SCREEN=product_ordering&amp;ScreenID=2464&amp;ProductID=952" />
    </conditions>
    <action type="Redirect" url="http://www.mysite.com/items.aspx?category=Screwdriver+Bits%2c+Nutsetters+%26+Holders&amp;id=203" appendQueryString="false" />
</rule>

Однако добавление 1400 из них кажется довольно утомительным. Я бы посмотрел, есть ли способ разбить их на шаблоны строк запроса.