首页 > 优化杂谈 一往情深seo

301重定向是什么,如何用代码实现301重定向?

发布时间:20-06-07优化杂谈围观131

摘要:   网站优化日常工作中,SEO人员经常会遇到需要做301重定向跳转的问题,常见的有更换域名、重复内容出现及网站改版的问题,甚至会遇到网站被黑(黑帽SEO技术),跳转到别人网站页面的情况,这都是跟301

  网站优化日常工作中,SEO人员经常会遇到需要做301重定向跳转的问题,常见的有更换域名、重复内容出现及网站改版的问题,甚至会遇到网站被黑(黑帽seo技术),跳转到别人网站页面的情况,这都是跟301重定向息息相关的,所以SEO站长了解301重定向是相当重要的。

301重定向是什么

  那么,什么是301重定向?

  301转向(或叫301重定向,301跳转)是当用户或搜索引擎向网站服务页面永久性移走器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。301重定向主要是将需要转移的网址重定向另一个新的网址上,并且是永久性转移。

  简单的理解:301重定向,就是把一个网站A的页面,重定向到网站B的网页,当访问网站A这个页面时,会自动跳转到网站B的对应页面。

  301重定向对百度排名的影响

  301重定向对网站真正的用途很大一部分是为了用户而设置的,让用户的体验更好,但是对网站在百度中的权重的影响是非常小的,几乎不会影响在百度中的排名!

  301重定向的作用

  ① 有利于权重整合

  我们经常发现一个站点收录多个首页变体,比如:index.html,顶级域名,带www的二级域名。

  为了避免权重流失,我们需要选定首选域,比如带www的二级域名,并且将顶级域名以及附带域名后的默认文档index.html,利用301重定向到二级域名。

  值得提醒的是,如果你做了HTTPS改造,那么一定要将HTTP重定向到HTTPS。

  ② 避免重复内容产生

  如果你的站点使用了伪静态,并且没有合理的处理好动态url,它同样会产生重复页面的问题,因此,你可以借助301重定向解决这个问题,当然最好的办法,你可以在robots.txt中屏蔽动态参数。

  301重定向的注意事项

  ① 在做301重定向的过程中,我们需要确保新旧URL的内容,高度相关,如果两篇内容不具备相关性,那么很可能会影响重定向的效果。

  ② 如果你试图利用多个内容相关的域名,301重定向到一个目标域名,让网站排名提高,这是一种相对危险的操作,很容易判定为作弊。

  主机重定向方法

  (一)linux主机对于linux虚拟主机Apache服务器,需要支持.htaccess这个文件。

  先去确定主机是否支持.htaccess这个文件(可以询问主机商),如果支持的话,首先将两个域名都解析到这个服务器,然后在.htaccess中添加如下规则:

  RewriteCond %{http_host} ^域名.net [NC]

  RewriteRule ^(.*)$ http://www.域名.net/$1 [R=301,L]

  如果你的网站根目录中已经存在了.htaccess文件,那么你可以直接修改该文件,然后将这条规则添加进去,如果你的网站根目录中不存在.htaccess文件,你可以先自己创建个htaccess.txt这样的空文件,然后添加如下规则,建成后将htaccess.txt文件上传到网站根目录,然后将htaccess.txt名修改为.htaccess,规则为:

  RewriteEngine on

  RewriteCond %{http_host} ^域名.net [NC]

  RewriteRule ^(.*)$ http://www.域名.net/$1 [R=301,L]

  (二)windows主机

  windows主机的IIS服务器,首先需要安装ISAP_Rewrite这个组件,一样的去询问下主机商是否支持这个组件,如果支持的话,将两个域名都解析到该IP,然后对于windows主机我们需要建的是httpd.ini文件而不是.htaccess文件,这个地方需要注意一下.

  如果你的网站根目录下存在httpd.ini文件,你可以直接将以上规则加入进去,如果网站根目录下不存在该文件,你可以先新建个httpd.txt空文件,然后添加如下规则,保存文件用FTP上传到网站根目录后,将httpd.txt名修改为httpd.ini即可.

  第一,用location重新指向另外一个地址。

  这样就实现了页面重定向的效果了。

  代码如下。

  仅供参考:

  <script language=JavaScript


  


        if (document.domain =='1573seo.com')  


  


        this.location = "http://www.1573seo.com" + this.location.pathname + this.location.search; 


 


  </script>

  第二,IIS中实现301转向:

  1.打开internet信息服务管理器,在欲重定向的网页或目录上按右键

  2.选中“重定向到URL”

  3.在对话框中输入目标页面的地址

  4.选中“资源的永久重定向”

  5.点击“应用”即可生效

  ASP下的301转向代码:

  第三:虚拟主机支持重写

  .htaccess文件实现301

  1、不带www跳转带www

  RewriteEngine On

  RewriteCond %{HTTP_HOST} ^1573seo.com$ [NC]

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

  2、带www跳转不带www

  RewriteEngine On

  RewriteCond %{HTTP_HOST} ^www.1573seo.com$ [NC]

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

  老域名跳转新域名,直接将代码里的第一个域名换为老域名,第二个域名换为新域名即可。

  301重定向与302重定向的关系

  ① 301重定向代表永久性的定向转移,言外之意就是当网站改版后,旧的链接结构,将完全不复存在。

  ② 302重定向代表的是临时性的定向跳转,比较常见的形式是短网址,302重定向并不能转移权重,并且对搜索引擎不是十分友好。

  总结:301重定向是SEO网站优化中不可获取的一部分,经常会被应用到,所以对于301重定向这方面,SEO一定要有所了解。


Tags: