У нас есть веб-сайт, где по нам нужно перенаправить все дочерние адреса сайта, но не верхний уровень, т.е.Как игнорировать родительский URL в asp.net перенаправляет
www.domain.com/products/ переадресация некоторых продуктов на сайт www.domain.com/some-product-page
Это все хорошо и хорошо. Однако у нас есть страница, которая существует на www.domain.com/products, и эта страница перенаправляется на домашнюю страницу сайта.
Я пробовал два метода, чтобы попытаться решить эту проблему. Первый, используя отрицание, чтобы игнорировать URL верхнего уровня/продуктов. Но это также приводит к тому, что URL-адреса игнорируются.
<rule name="Redirect Products child pages" stopProcessing="true">
<match url="^products/(.*)$" />
<conditions>
<add input="{PATH_INFO}" pattern="^(/*)/?.*" />
<add input="{REQUEST_URI}" negate="true" pattern="^products" ignoreCase="true" />
</conditions>
<action type="Redirect" redirectType="Permanent" url="{R:1}" />
</rule>
Я пробовал варианты ввода этого шаблона с небольшим успехом.
Вторым методом, который я искал, было создание правила, которое выглядело только для/products/url, и прекратило обработку правил, когда они были найдены. Но это также имеет тот же эффект, что и первый метод.
<rule name ="Prevent Products page redirect" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{PATH_INFO}" pattern="^/products/" />
</conditions>
<action type="None" />
</rule>
Так есть что-то мне нужно добавить к шаблону, чтобы сделать его игнорировать все другие URL-адреса, или я упускаю что-то другое?
Большое спасибо.