重定向说白了就是经过各类的方法将各类网络请求从新定个方向转到其它位置(如:网页重定向、域名的重定向、路由选择的变化也是对数据报文经由路径的一种重定向)。php
咱们在网站建设中,时常会遇到须要网页重定向的状况:html
1.网站调整(如改变网页目录结构);数据库
2.网页被移到一个新地址;浏览器
3.网页扩展名改变(如应用须要把.php改为.Html或.shtml)。服务器
这种状况下,若是不作重定向,则用户收藏夹或搜索引擎数据库中旧地址只能让访问客户获得一个404页面错误信息,访问流量白白丧失;再者某些注册了多个域名的网站,也须要经过重定向让访问这些域名的用户自动跳转到主站点等。网络
区别:ide
1.请求的次数的不一样,重定向总共请求了两次服务器;转发则是用户请求一次可能通过N个JSP页面由返回到用户浏览器中,是一次请求屡次处理的过程。
2.跳转过程当中连接的变化,重定向在跳转中请求了两次服务器而且是两次不一样的连接地址,在浏览器的地址栏能够看到两次是有变化的;转发在跳转过程当中浏览器请求了一次服务器,服务器通过了n个JSP页面并无改变请求的连接地址,由于用户只请求了一次,因此在整个跳转过程当中连接地址是没有改变的,在浏览器的地址栏就能够看到。
3.目的不一样,重定向只是简单的让用户访问一个新的连接,而转发是服务器要获得用户的请求内容并须要进行一部分处理的,因此二者目的之不一样的。网站