SEO中什么叫302?

SEO中什么叫302?,第1张

建议你看下301和302跳转的区别你就能更明白了,302是临时性的跳转,而301是永久性的跳转,给搜索引擎的解释不一样,搜索引擎做出的反应也不一样的。

301重定向是目前Chris.DL在对每个客户提供SEO服务时,必定会讲到的东西,过程中,往往会发现大家使用的都是302跳转,虽然最终看到的效果是一样的,但对搜索引擎来讲,301和302还是有区别的。

301的含义是“永久重定向”,而302的含义是“临时重定向”,参考:服务器状态代码含义

那么为什么不能用302呢?下面摘自Zac的一段文章内容

302重定向和网址劫持(URL hijacking)有什么关系呢?这要从搜索引擎如何处理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的跳转本身是没有错的,但因为被一些作弊者用多了,Google当然对这个就比较敏感了,毕竟Google面对的是如此海量的数据,你难道不怕被误杀吗?

Google的官方内容一再强调用301来转移内容,况且,301和302在程序上的设置相差很小,既然如此,何必要冒险用302呢?

ASP下的301转向代码

<%@ Language=VBScript %>

<%

Response.Status=”301 Moved Permanently”

Response.AddHeader “Location”, “http://www.xxx.com”

%>

3、ASP.Net下的301转向代码

<script runat=”server”>

private void Page_Load(object sender, System.EventArgs e)

{

Response.Status = “301 Moved Permanently”

Response.AddHeader(”Location”,”http://www.XXX.com“)

}

</script>

4、PHP下的301转向代码

header(”HTTP/1.1 301 Moved Permanently”)

header(”Location: http://www.XXX.com”)

exit()

5、CGI Perl下的301转向代码

$q = new CGI

print $q->redirect(”http://www.new-url.com/”)

6、JSP下的301转向代码

<%

response.setStatus(301)

response.setHeader( “Location”, “http://www.XXX.com/” )

response.setHeader( “Connection”, “close” )

%>

7、Apache下301转向代码

新建.htaccess文件,输入下列内容(需要开启mod_rewrite):

1)将不带WWW的域名转向到带WWW的域名下

Options +FollowSymLinks

RewriteEngine on

RewriteCond %{HTTP_HOST} ^XXX.com [NC]

RewriteRule ^(.*)$ http://www.XXX.com/$1 [L,R=301]

2)重定向到新域名

Options +FollowSymLinks

RewriteEngine on

RewriteRule ^(.*)$ http://www.XXX.com/$1 [L,R=301]

3)使用正则进行301转向,实现伪静态

Options +FollowSymLinks

RewriteEngine on

RewriteRule ^news-(.+)\.html$ news.php?id=$1

将news.php?id=123这样的地址转向到news-123.html

8、Apache下vhosts.conf中配置301转向

为实现URL规范化,SEO通常将不带WWW的域名转向到带WWW域名,vhosts.conf中配 置为:

<VirtualHost *:80>

ServerName www.XXX.com

DocumentRoot /home/love07

</VirtualHost>

<VirtualHost *:80>

ServerName XXX.com

RedirectMatch permanent ^/(.*) http://www.XXX.com/$1

</VirtualHost>

Apache下除了以上2种方法,还有其他配置方法和可选参数,建议阅读Apache文档 。

301转向情况检测


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/592704.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-07-08
下一篇2023-07-08

发表评论

登录后才能评论

评论列表(0条)

    保存