простое перенаправление с одной страницы на другую в web.config - PullRequest
0 голосов
/ 30 сентября 2019

Я использую веб-формы Asp.Net с IIS 8.5.

У меня уже есть маршрутизация URL на месте и настроен httperrors в web.config для отловаОшибки 404/500, но теперь мне нужно перенаправить некоторые старые страницы в новое место назначения.

Старая страница больше не будет существовать , поэтому она не должна быть перехвачена HttpErrorsкод до его перенаправления.

Я хочу перенаправить страницу с /widgets/oldwidget на /newwidget

Примечание: /newwidget - это перенаправленный URL, физическая страница будет выглядеть примерно так:: /pages/oldwidget.aspx.

Мне трудно найти четкие инструкции о том, как использовать httpdirect в этом сценарии.

Кто-нибудь может дать какой-нибудь совет? Это правильный подход?

 <httpRedirect enabled="false" httpResponseStatus="Permanent" exactDestination="true">
     // Redirect my page
 </httpRedirect>

<httpErrors errorMode="DetailedLocalOnly">
    <clear/>
    <remove statusCode="404" subStatusCode="-1"/>
    <remove statusCode="500" subStatusCode="-1" />
    <error statusCode="404" path="/404" responseMode="ExecuteURL" />
    <error statusCode="500" path="/500" responseMode="ExecuteURL" />
</httpErrors>

1 Ответ

0 голосов
/ 01 октября 2019

Согласно вашему описанию, я предлагаю вам попробовать использовать переписывание URL для достижения ваших требований.

Вы можете установить расширение перезаписи URL на этом url .

Затем вы можете добавить следующие настройки конфигурации в файле конфигурации.

<system.webServer>
<rules>
                <rule name="Rereoute" stopProcessing="true">
                    <match url="widgets/oldwidget" />
                    <action type="Redirect" url="http://domainname.com/newwidget" />
                </rule>


</rules>
</system.webServer>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...