老是记不住这301和302的区别,经常混淆,特些查看网上相关信息,记录下:
1、什么是301转向?什么是301重定向?
301转向(或叫301重定向,301跳转)是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。
2、什么是302重定向?
302重定向又称之为302代表暂时性转移(Temporarily Moved ),英文名称:302 redirect。 也被认为是暂时重定向(temporary redirect),一条对网站浏览器的指令来显示浏览器被要求显示的不同的URL,当一个网页经历过短期的URL的变化时使用。一个暂时重定向是一种服务器端的重定向,能够被搜索引擎蜘蛛正确地处理。
3、301重定向与302重定向的区别
302重定向是暂时的重定向,搜索引擎会抓取新的内容而保留旧的网址。因为服务器返回302代码,搜索引擎认为新的网址只是暂时的。
301重定向是永久的重定向,搜索引擎在抓取新内容的同时也将旧的网址替换为重定向之后的网址。
4、为什么302 重定向和网址劫持有关联
从网址A 做一个302 重定向到网址B 时,主机服务器的隐含意思是网址A 随时有可能改主意,重新显示本身的内容或转向其他的地方。大部分的搜索引擎在大部分情况下,当收到302 重定向时,一般只要去抓取目标网址就可以了,也就是说网址B。如果搜索引擎在遇到302 转向时,百分之百的都抓取目标网址B 的话,就不用担心网址URL 劫持了。问题就在于,有的时候搜索引擎,尤其是Google,并不能总是抓取目标网址。
比如说,有的时候A 网址很短,但是它做了一个302 重定向到B 网址,而B 网址是一个很长的乱七八糟的URL 网址,甚至还有可能包含一些问号之类的参数。很自然的,A 网址更加用户友好,而B 网址既难看,又不用户友好。这时Google 很有可能会仍然显示网址A。由于搜索引擎排名算法只是程序而不是人,在遇到302 重定向的时候,并不能像人一样的去准确判定哪一个网址更适当,这就造成了网址URL 劫持的可能性。也就是说,一个不道德的人在他自己的网址A 做一个302 重定向到你的网址B,出于某种原因, Google 搜索结果所显示的仍然是网址A,但是所用的网页内容却是你的网址B 上的内容,这种情况就叫做网址URL 劫持。你辛辛苦苦所写的内容就这样被别人偷走了。
302 重定向所造成的网址URL 劫持现象,已经存在一段时间了。不过到目前为止,似乎也没有什么更好的解决方法。在正在进行的数据中心转换中,302 重定向问题也是要被解决的目标之一。从一些搜索结果来看,网址劫持现象有所改善,但是并没有完全解决。
分享到:
相关推荐
DS301 规范了对应用层、通信子协议进行了全面描述外,还为特定的应用提供了扩展架构,定义了更多规则和特殊通信对象。例如:定义 了网络管理对象(节点保护,寿命保护),并定义了使用这些对象的详细规则,是包含...
- **303 See Other**:与301/302类似,区别在于原本通过POST请求的资源现在应通过GET方式获取。这是HTTP 1.1新增的状态码。 - **304 Not Modified**:客户端请求的资源自上次请求以来未发生变化,因此返回此状态码来...
HTTP状态码是网络通信中用来标识客户端与服务器之间交互情况的重要信息。这些状态码由三位数字组成,分为五类,分别表示...同时,正确设置重定向状态码(如301和302)对保持网站结构的稳定性和搜索引擎排名至关重要。
301(永久移动)和302(临时移动)用于页面迁移,301是永久性重定向,搜索引擎会更新索引,而302则是临时重定向,搜索引擎仍会抓取原始URL。303(查看其他位置)和307(临时重定向)类似于302,但推荐使用GET方法...
204(无内容)和205(重置内容)都是成功响应,但不返回任何内容,区别在于205要求客户端重置文档视图。206(部分内容)是针对部分GET请求的响应,服务器只返回请求的部分内容。 3xx(重定向):这类状态码表示为了...
在Java Web开发中,301跳转和重定向是两个常见的HTTP状态码技术,用于指导浏览器或客户端从一个URL转向另一个URL。这两种方法在不同的场景下有着不同的用途,但都涉及网页内容的位置变动或者请求的重定向。下面将...
请求重定向是通过`Response`对象来实现的,服务器在收到请求后,会返回一个状态码3xx(如301永久重定向,302临时重定向),并在响应头中设置`Location`字段,指示客户端应该去新的URL获取资源。浏览器接收到这样的...
与204的区别在于,这个状态码要求用户代理重置文档视图。 - **206 Partial Content**: 客户端发出了带有Range头字段的GET请求,服务器完成了它。 #### 3xx: 重定向状态码 这类状态码表示需要客户端采取进一步的操作...
- 实现方式:通过设置HTTP响应头中的`Location`字段,并且状态码为3xx(通常是302临时重定向或301永久重定向)来实现。 - 应用场景:通常用于需要改变访问路径的情况,比如登录后跳转到首页,或者页面地址永久更改...
3. PUT 请求:本质上来讲,PUT 和 POST 极为相似,都是向服务器发送数据,但它们之间有一个重要区别,PUT 通常指定了资源的存放位置,而 POST 则没有,POST 的数据存放位置由服务器自己决定。 4. HEAD 请求:HEAD 和...
204(无内容)和205(重置内容)都是成功响应,但不返回任何内容,区别在于205要求客户端重置文档视图;206(部分内容)用于响应部分GET请求,如断点续传。 3xx(已重定向):这类状态代码表示需要客户端进行额外...
#### 三、301重定向与302重定向的区别 - **301重定向**表示网页已被永久移动,搜索引擎会更新索引,并将权重传递给新地址。 - **302重定向**通常表示网页暂时性移动,搜索引擎会继续索引原网页,而不更新其索引信息...
8. CiA DS301:这是CANopen的基础规范,定义了CANopen的结构和基本功能,后续的DS规范扩展了特定领域的应用,如DS302(设备类型和接口)、DS305(电力驱动)等。 总结来说,CAN协议专注于底层通信,而CANopen则在其...
服务器接收到请求后,返回一个HTTP状态码302(临时重定向)或301(永久重定向),并附带一个新的URL。客户端接收到这个响应后,会自动发起一个新的请求到新的URL,这意味着浏览器的地址栏会显示新的URL。由于是两个...
例如,状态码301(永久移动)表示请求的资源已被永久转移到新的URL,而302(临时移动)则表示资源临时移到了新的URL。 4xx (请求错误):这些状态码意味着请求中有问题,阻碍了服务器的处理。例如,400(错误请求)...
- 301/302:重定向,告诉客户端请求的资源已被移动到新的URL。 - 400:错误的请求,客户端发送的请求无法被服务器解析。 - 404:未找到,服务器找不到请求的资源。 - 500:服务器内部错误,服务器无法完成请求。 五...
而重定向(Redirect)则是服务器向客户端浏览器发送一个状态码302(暂时重定向)或301(永久重定向)响应,指示浏览器需要向新的URL发起新的请求。浏览器收到这个响应后,会自动发送一个新的请求到指定的URL。因此,...
2. **URL重定向**:当浏览器接收到服务器返回的特定状态码(如301或302)时,会根据响应头中的Location字段进行页面跳转。在HTTPS到HTTP的跳转中,服务器需要正确设置这些状态码和Location字段。 3. **C#编程基础**...