1

古いアドレス www.informarea.it/BlogEngine を新しいアドレス www.informarea.it にリダイレクトしたい...

*私の blogengine.net の global.asax は *

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

   // Attempt to perform first request initialization
    FirstRequestInitialization.Initialize(context);
}

*リダイレクトのコードを永続的に適用するようにすることはできますか? *

if (app.url.ToString().ToLower().Contains("http://www.informarea.it/BlogEngine")) 
 {

     HttpContext.Current.Response.Status = "301 Moved Permanently";   

     HttpContext.Current.Response.AddHeader("Location",url.Replace("http://www.informarea.it/blogengine", "http://www.informarea.it"));

}

誰かが私を助けることができますか? どうもありがとうファブリー

4

1 に答える 1

0

これにより、パスが /BlogEngine で始まるすべてのクエリが、/BlogEngine が削除された同じ URL にリダイレクトされます。

if(Request.Url.PathAndQuery.StartsWith("/BlogEngine", StringComparison.OrdinalIgnoreCase)) {
    Response.RedirectPermanent(Request.Url.PathAndQuery.Substring(11), true);
}

長所:

  • あなたが要求したように 301 Redirect を返します
  • 次のリクエストのために、残りのパスとクエリ文字列をそのまま保持します

短所:

  • .net 4.0 が必要です (BlogEngine のバージョン 2.7 は 4.0 を対象としているため、これは問題にはならないと思います。)
于 2013-04-12T00:53:15.297 に答える