Перенаправление с помощью в web.config не перенаправление

#c# #.net #iis #url-rewriting #web-config

Вопрос:

Я написал правило, но оно не работает.

Мне нужно перенаправить testsite с articles помощью на about-park/blog .

   <rule name="Redirect Articles" enabled="true" stopProcessing="true">
    <match url="articles" />
    <conditions>
      <add input="{HTTP_HOST}" pattern="^testsite.co.uk$" />
    </conditions>
    <action type="Redirect" url="http://{HTTP_HOST}/about-park/blog/" appendQueryString="false" />
  </rule>
 

Если URL https://www.testsite.co.uk/articles/testpage -адрес, то он должен перенаправляться на https://www.testsite.co.uk/about-park/blog/testpage

Аналогично, https://www.testsite.co.uk/articles/1/testing чтобы https://www.testsite.co.uk/about-park/blog/1/testing

Комментарии:

1. работает ли ваш редирект, если вы удалите условия?

2. нет, это не работает, @AliReza

3. так что, вероятно, ваша проблема не связана с правилами. проверьте свой формат web.config и модули iis

4. попробуйте использовать этот шаблон /testsite.co.uk/

5. нет, это не сработало

Ответ №1:

вы можете использовать функцию перезаписи.

например

 
<rule name="Articles">
    <match url="^(.*)/articles/(.*)" />
    <action type="Rewrite" url="{R:1}/about-park/blog/{R:2}" />
</rule>

 

примечание: просто измените Перезапись на перенаправление в типе действия, если вы хотите перенаправить.

Ответ №2:

Для этого требования вы можете обратиться к моему образцу правила перенаправления ниже:

 <rule name="Articles">
    <match url="^articles/(.*)" />
    <conditions>
      <add input="{HTTP_HOST}" pattern="^www.testsite.co.uk$" />
    </conditions>
    <action type="Redirect" url="http://{HTTP_HOST}/about-park/blog/{R:1}" />
</rule>
 

Пожалуйста, обратите внимание, что есть некоторые улучшения по сравнению с решением, предоставленным AliReza. Во-первых, если мы добавим / раньше articles/(.*) , это может не соответствовать правилу. Во-вторых, если URL-адрес запроса есть https://www.testsite.co.uk/abc/articles/testpage , он будет перенаправлен https://www.testsite.co.uk/abc/about-park/blog/testpage , если использовать его образец правила перенаправления.