让Response.Redirect页面重定向更有效率

简介:

用 Redirect 方法可将浏览器重定向到另一个 URL,而不是将内容发送给用户。 这里有一篇文章介绍使用Redirect《Using Response.Redirect Effectively》 ,文章详细的讨论了Response.Redirect ,给出了一段代码:

public static class HttpResponseExtensions  
{  
         public static void RedirectUser(this HttpResponse response, string url)  
         { 
             if (response.IsRequestBeingRedirected)  
                  return;  
             response.Redirect(url, false);  
             var context = HttpContext.Current;  
             if (context != null)
         {  
                   context.ApplicationInstance.CompleteRequest();  
             }  
         }  
}

另外ASP.NET 4 增加了一个RedirectPermanent方法,该方法同样是重定向,但生成的HTTP响应状态不是上边所演示的302,而是301(永久跳转),301 是对搜索引擎最友好的重定向方式。你有个网站http://www.cnblogs.com ,当人们访问http://www.cnblogs.com 这个URL时,你就把他们重定向到http://www.cnblogs.com/shanyou/,那么当搜索引擎爬到http:www.cnblogs.com这个网址时,如果它不能很好地跟随重定向,则它将认为http://www.cnblogs.com页面时没有内容的,所以这个页面的排名将会非常靠后。 如果我们把一个地址采用301 跳转方式跳转的话,搜索引擎会把老地址的PageRank等信息带到新地址,同时在搜索引擎索引库中彻底废弃掉原先的老地址。

本文来自云栖社区合作伙伴“doNET跨平台”,了解相关信息可以关注“opendotnet”微信公众号

目录
相关文章
|
5天前
|
Java 数据安全/隐私保护
response对象的转发和重定向
response对象的转发和重定向
12 0
|
JSON 前端开发 小程序
uniapp:request 请求出现400错误
uniapp:request 请求出现400错误
517 0
uniapp:request 请求出现400错误
|
5天前
|
存储 数据处理
Request请求转发与Respones请求重定向有什么区别?
Request请求转发与Respones请求重定向有什么区别?
|
5天前
Response设置响应数据功能介绍及重定向
Response设置响应数据功能介绍及重定向
42 0
|
5月前
|
数据采集 安全 Python
Python爬虫遇到重定向URL问题时如何解决?
Python爬虫遇到重定向URL问题时如何解决?
|
6月前
forward内部跳转 和redirect重定向跳转的区别
forward内部跳转 和redirect重定向跳转的区别
Servlet学习(九):请求重定向(例如:页面搬迁后的跳转)
Servlet学习(九):请求重定向(例如:页面搬迁后的跳转)
Servlet学习(九):请求重定向(例如:页面搬迁后的跳转)
Servlet学习——请求跳转和重定向
Servlet学习——请求跳转和重定向
60 0
Response完成重定向
Response完成重定向
57 0
Response完成重定向