地址转发和地址重写

“地址重写”与“转发”在计算机网络领域是两个重要概念,经常被大家提起。但许多人对这两个概念的区别不清楚,甚至混为一谈。

地址转发:

一种在服务器内部的资源跳转方式。

 

客户端浏览器发送请求到RequestDemo5,RequestDemo5转发请求到RequestDemo6,并且共享request域对象“Ray”。

特点:

(1)转发实际只有一次请求,因为是在服务器内部资源跳转的方式,服务器响应数据后返回;

(2)当我们把要转发到的资源 /RequestDemo6 换成 www.baidu.com 发现并不能实现转发(404 not found),说明了只能转发到当前服务器内部资源中;

(3) 浏览器地址栏路径不发生变化。

 

地址重写:

 另一种资源跳转的方式。

地址重写”,实际上是为了实现地址标准化。那么,什么是地址标准化呢?我们来举一个例子。比如在访问Google首页的时候,我们在地址栏中可以输入www.google.com,也可以输入google.cn,它们都能够准确地指向Google首页,从客户端来看,Google首页同时对应了两个地址,实际上,Google服务器是在不同的地址中选择了确定的一个,即www.google.com,进而返回服务器响应的。这个过程就是地址标准化的过程。google.cn这个地址在服务器中被改变为www.google.com的过程就是地址重定向的过程。

特点:

(1)dom1敲击回车发现浏览器地址会瞬间变成dom2 ,浏览器一共发送了2次请求;

(2)重定向可以访问其他站点(服务器)的资源。

 

区别:

从上面的解释,我们可以看到“地址重写”和“地址转发”代表的两个过程是不同的。我们可以总结这两个过程的几点区别:

(1) 地址转发后客户端浏览器地址栏中的地址显示是不改变的;而地址重写后客户端浏览器地址栏中的地址改变为服务器选择确定的地址;

(2)在一次地址转发整个过程中,只产生一次网络请求;而一次地址重写一般会产生两次请求;

(3) 地址转发一般发生在同一站点项目内;而地址重写没有该限制;

(4)地址转发到的页面可以不用全路径名表示,而地址重写到的页面必须使用完整的路径名表示;

(5) 地址转发过程中,可以将客户端请求的request范围内属性传递给新的页面,但地址重写不可以;

(6)地址转发的速度较地址重定向快。

posted @ 2022-11-16 11:08  鸡腿太小  阅读(182)  评论(0编辑  收藏  举报