0

Webサイトを.htm/.htmlページの使用からaspxページに移動しました。一部の既存のWebサイト/ブックマークなどは、aspxファイルではなく古いファイルを参照するため、aspxバージョンに送信する必要があります(同じ名前を付けています)。各ページにリダイレクトコードを追加したくありません。

どうすればこれを一度行うことができますか?

乾杯

4

2 に答える 2

0

IIS を使用している場合は、URL Rewriteを参照してください。これにより、.html のすべての要求を .aspx に簡単に変換できます。

于 2012-07-15T22:17:38.800 に答える
0

OPからのコメント後の更新:

Global.asax.cs でエラーをキャッチしたい場合は、この方法で行ってください。

protected void Application_Error(Object sender, EventArgs e)
{
    HttpContext context= HttpContext.Current;

    Exception exception = context.Server.GetLastError();

    int httpCode = ((HttpException)exception).GetHttpCode();
    if (httpCode == 404)
    {
      ctx.Server.RedirectPermanent("~/yournewfilename.aspx", true);
     //For more infor on RedirectPermanent got to http://msdn.microsoft.com/en-us/library/dd322042.aspx
    }
}

============ その他 ==============

すぐに使えるものが必要な場合は、http://www.isapirewrite.com/または URL 書き換え

ただし、コードでこれを実現することもできます。着信要求に IHttpHanlder インターフェイスを実装することで独自の httphandler を記述します。この場合、.htm または .html の要求が .aspx にリダイレクトされる場合は非常に簡単です。

独自の HttpHandler を作成する場合に役立つリンク

http://msdn.microsoft.com/en-us/library/5c67a8bd(v=vs.85).aspx

http://codebetter.com/karlseguin/2006/05/25/httphandlers-%E2%80%93-learn-them-use-them/

http://www.hanselman.com/blog/ABoilerplateHttpHandler.aspx

于 2012-07-15T22:27:22.633 に答える