哪个重定向更好 - web.config或global.asax

时间:2010-02-01 08:32:48

标签: asp.net redirect web-config global-asax

我需要将应用程序中的一些旧页面重定向到新页面。我认为web.config中的urlMapping是实现这一目标的有效方法。但是还有另一种使用global.asax重定向的方法。哪一个是有效的方式。在请求执行的什么时候,这个asax和配置文件会出现在图片中?

3 个答案:

答案 0 :(得分:1)

如果我将现有页面映射到新页面,我会保留旧页面,并将301永久重定向刷新到客户端。这将保留SEO,假设这是一个公共站点。

 Response.StatusCode = 301;
 Response.Status = "301 Moved Permanently";
 Response.RedirectLocation = location; // static, configuration, or database
 Response.End();

总的来说,我会选择重新路由而不是重写。两个很棒的链接是:

有关重新路由之前的一些不同方法的概述,请查看Scott Gu's Tip/Trick: Url Rewriting with ASP.NET

答案 1 :(得分:0)

使用URL Rewrite ISAPI过滤器进行重定向 - 它是较低级别并且将首先运行,因此您不会在asp.net引擎上受到攻击。

我链接的页面还提到了ASP.NET Routing,它们之间的区别以及如何在两者之间进行选择。

答案 2 :(得分:0)

这是通过HttpHandler编写重定向的方法之一。

http://www.developerfusion.com/article/4643/implementing-http-handlers-in-aspnet/