内联以处理url重定向

本文关键字:url 重定向 处理 | 更新日期: 2023-09-27 17:57:40

我正在将一个网站从siteA.domain.com迁移到siteB.domain.com。所有页面路径保持不变。问题是,这是一个渐进的迁移过程,并不是每条路径都在同一时间迁移。所以我需要做的是检查用户要去的路径,如果它是迁移站点列表的成员,那么将用户从siteA.domain.com/path重定向到siteB.domain.com/path

我希望在母版页中添加内嵌的c#代码。对此有什么想法/例子吗?

内联以处理url重定向

我认为正确的方法是向Global.asax.添加一些路由

       void Application_Start(object sender, EventArgs e)
    {
        // Code that runs on application startup
        RegisterRoutes(RouteTable.Routes);
    }
            public static void RegisterRoutes(RouteCollection routes)
    {
        routes.MapPageRoute("home",
            "home",
            "~/Home.aspx");
    }

上面的代码将允许您键入"http://mysite.com/home",它将重定向到Home.aspx页面。您可以重定向到http://myothersite.com/Home.aspx而不是使用~或相对路径。

您可以为某些主列表中的每个页面添加路由。

我会在您的配置中有一个已迁移的地址列表,然后在主页面的page_load中检查当前url(在Request.Url中的属性中,我记不清是哪个),看看它是否是配置中的列表。

简单,但通常简单的方式是最好的。另外,如果这是一件临时的事情,那么浪费时间做任何复杂的事情都没有意义。

有没有理由不使用IIS进行重定向?SO问题-如何在IIS中重定向URL路径?

创建一个IHttpHandler,用于拦截所有传入请求并进行适当重定向。