web-dev-qa-db-ja.com

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>
3
user221535

いくつかのこと。

  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個追加するのはかなり面倒なようです。それらをクエリ文字列パターンに分割できる方法があるかどうかを確認したいと思います。

0
squillman