Лучший способ обработать старые * .asp ссылки с Asp.Net 4.0 на IIS 7.5? - PullRequest
0 голосов
/ 05 января 2011

У нас еще есть много входящих URL-адресов, указывающих на наши старые страницы .asp.Новые страницы .aspx называются такими же, как старые страницы .asp, и принимают в основном те же значения, поэтому они в значительной степени взаимозаменяемы.К сожалению, мы все еще получаем запросы POST и GET к старым страницам .asp.Мы обработали эти запросы .asp в нашем приложении Asp.Net 2.0, добавив их в наш web.config (раздел system.webserver):

    <handlers>
        <add name="ASPClassicForRedirectToASPX"
             path="*.asp"
             verb="*"
             modules="IsapiModule"
                scriptProcessor="%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll"
             resourceType="Unspecified"
             preCondition="classicMode,runtimeVersionv4.0,bitness32" />
    </handlers>

, а затем проверив в BeginRequest, заканчивается ли URL-адрес на .asp,и если это произойдет, сделайте RewritePath для .aspx

Теперь мы перешли на asp.net 4.0, и я начал задаваться вопросом, есть ли лучший способ справиться с этим, и при этом сохранить обратную совместимость со старым.URL-адреса asp?

1 Ответ

0 голосов
/ 08 января 2011

что бы я сделал, если бы не все так, в BeginRequest что-то вроде этого вместо перезаписи URL-адреса (когда это возможно):

Response.Clear();
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","New-url");
Response.End();

с помощью перенаправления 301 перманентно вы убедитесь, что все сканеры иматериал поменяет свою ссылку на нужную, что должно значительно уменьшить количество обращений к страницам .asp.кроме того, что вы застряли со старыми прямыми ссылками на ваши страницы asp в какой-то момент, я предполагаю, что вам придется отпустить их.Не могу поддерживать старые вещи навсегда, даже если это было бы здорово :) 1004 *

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