4

以前は ASP.NET Web フォームで構築され、現在は ASP.NET MVC で構築されている Web サイトで作業していました。

先週、新しい MVC バージョンを公開しました。

しかし、 www.website.com/login.aspxである古いログイン URL は多くのユーザーによってブックマークされており、現在もそれを使用しているため、404 エラーが発生します。

したがって、ユーザーを古いURLからwww.website.com/account/loginである新しいmvc URLにリダイレクトする最も簡単で最良の方法はどれだろうと思っていました

このログイン URL のように、ユーザーが他のいくつかの URL もブックマークしている可能性があると思いますが、これを処理する最善の方法は何でしょうか?

4

2 に答える 2

6

URL Rewrite moduleIISで使用できます。<system.webServer>セクションに次のルールを配置するのと同じくらい簡単です。

<system.webServer>
    <rewrite>
        <rules>
            <rule name="Login page redirect" stopProcessing="true">  
                <match url="login.aspx" />  
                <action type="Redirect" redirectType="Permanent" url="account/login" />  
            </rule>  
        </rules>
    </rewrite>

    ...
</system.webServer>

このモジュールは非常に強力で、あらゆる種類の書き換えとリダイレクトを可能にします。ここにいくつかの他のものがありsample rulesます。

于 2013-04-01T05:59:37.173 に答える
5

global.asax で

void Application_BeginRequest(Object source, EventArgs e)
    {
        //HttpApplication app = (HttpApplication)source;
        //HttpContext context = app.Context;

        string reqURL = HttpContext.Current.Request.Url;

        if(String.compare(reqURL, "www.website.com/login.aspx")==0)
        {
            Response.Redirect("www.website.com/account/login");
        }
    }
于 2013-04-01T05:50:50.157 に答える