2

一部のページを永続的にリダイレクトし、ユーザーを新しい URL にリダイレクトする必要があります。

このコードは、正しいヘッダーのみを設定します。ユーザーはリダイレクトされません。

public static void PermanentRedirect(this HttpResponse response, string newUrl)
{
  response.Status = "301 Moved Permanently";
  response.StatusCode = 301;
  response.AddHeader("Location", newUrl);
}

私が置く場合:

Response.Redirect(newUrl);

最後に、302 一時リダイレクトが実行されます。

ユーザーを 301 リダイレクトするにはどうすればよいですか?

関連する質問:

ASPページでプログラムで301リダイレクトするにはどうすればよいですか

4

3 に答える 3

4

Response.Flush と Response.End を試してください。Redirect は、302 を送信してリクエストを終了するように指示します。

于 2009-07-05T02:05:26.827 に答える
2

ASP.NET 4.0 ではこれが組み込まれているため、RedirectPermanent()メソッドを使用できることに注意してください。例えば

RedirectPermanent("/newpath/foroldcontent.aspx"); 
于 2010-04-21T10:47:52.730 に答える
0

またはISAPIを試してみてください。IIS の mod_rewrite やその他の .htaccess 機能を模倣します。

于 2009-09-01T18:18:45.783 に答える