Permanently Redirecting a Page
30.12.2009 11:35
Web uygulamanızda bir sayfa ismi değiştirdiğinizde favori listelerinde yada daha önceden farklı sitelerden verilen linkler doğal olarak sayfa bulunamadı hatası ile karşılaşacaklardır. Ziyaretçilerin yeni adrese ulaşmaları için eski sayfayı silmeden Page_Load içinde Response.Redirect() komutu ile yeni sayfaya yönlendirmek bir çözüm olabilir.
Ancak arama motorları bu sayfanın artık kullanılmadığını idrak edemezler. Response.Redirect komutu arama motorlarına HTTP durum kodlarından 302 Found mesajını iletirler. Oysa bu sayfa kalıcı olarak taşınmıştır ve artık arama motorlarının kendi veritabanlarını güncellemesi için bunu onlara bildirmemiz gerekmektedir. Bu da HTTP durum mesajlarından 301 Moved Permanently ile yapılabilir.
ASP.NET 4.0 dan önceki sürümler şu lekilde yapılabiliyordu :
protected void Page_Load(object sender, EventArgs e)
{
Response.Status = "301 Moved Permanently" ;
Response.AddHeader( "Location" ,"http://www.yeniadres.com" );
}
Böyle durumlarda yukarıdaki durum mesajını iletmek için Response.RedirectPermanent() metodu kullanılabilir.
Response.RedirectPermanent(“http://www.yeniadres.com”)
Bu yazı 239 kere okundu.



