正在阅读:

网站301重定向具体解决方案及操作步骤

2,781

网站301重定向具体解决方案及操作步骤

网站301重定向是什么意思?到底要怎样做?我们得先知道几个概念:

301转向(或叫301重定向,301跳转)是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。301重定向主要是将需要转移的网址重定向另一个新的网址上,并且是永久性转移。301重定向对网站真正的用途很大一部分是为了用户而设置的,让用户的体验更好,但是对网站在百度中的权重的影响是非常小的,几乎不会影响在百度中的排名!

页面永久性移走(301重定向)是一种非常重要的自动转向技术。在更换域名的时候起着不可替代的作用,他不仅可以实现网页的批量指定转跳,还可促进搜索引擎优化效果。不同于302,从搜索引擎优化角度出发,301重定向是网址重定向最为可行的一种办法。当网站的域名发生变更后,搜索引擎只对新网址进行索引,同时又会把旧地址下原有的外部链接如数转移到新地址下,从而不会让网站的排名因为网址变更而受到丝毫影响。当然各个搜索引擎对301的处理方式是不一样的。

第一种情况:网站在做域名解析时,经常会解析2个域名,即带www的和不带www的。这样做的目的是,当用户使用不带www的域名时,也可以正常访问你的网站。但是这样做的后果是,你站点主域名的pr值分散到其他几个URL上了。因为在搜索引擎看来,带www和不带www的URL是2个完全不同的URL,当它们指向同一个网站时,会让搜索引擎不懂应该选择哪一个URL作为主要的域名。如果你用301重定向把其他几个URL如http://www.jiangwenseo.com转到http://jiangwenseo.com时,相应的PR也就集中在主域名:http://jiangwenseo.com上了。即是为了URL规范化并集中权重不让权重分散。

第二种情况:是网站为了网站改版,将旧版本的页面的所有指标全部转移到新版本的页面上。而实施301重定向可以做到这些,在作用上也是非常的强大,也建议中小企业的站长有效的利用301重定向给网站带来的作用。使用 301 重定向将您原来网站上的所有网页永久重定向至新网站。这可以告诉搜索引擎和用户您的网站已永久迁移。是符合搜索引擎友好的,目前最安全的网址域名更换。

重定向主要分为301永久重定向、302临时重定向,两种重定向是根据不同情况来做的:

①、301永久重定向

首先,301永久重定向。这个状态码告诉用户、搜索引擎、浏览器,该资源已经永久性的移动到另一个位置(旧版本页面永久重定向到新版本页面),而且没有恢复原位的打算。301永久重定向最适合目录转移,推荐使用301重定向!

②、302临时重定向

然后,302临时重定向。这个状态码告诉用户、搜索引擎、浏览器,该资源已经暂时性的移动到另外一个位置(旧版本页面临时重定向到新版本页面),这种移动不会当作永久性,而且会恢复原来的位置,但一些情况下适合使用302重定向。

302重定向对手机站优化是有一定的好处,百度官方给的建议:比如减少内容死链,如果没有内容,最好通过HTTP状态码指定,如404、403等;如果内容死链希望重定向到首页,最好通过302跳转,不要使用javascript跳转。此时可以发现302重定向对手机站优化是有好处的。

注意:两种形式的重定向都会将用户、搜索引擎发送到新的位置(页面),但搜索引擎对待这两个HTTP状态码却不同。当搜索引擎看到301状态码的时候,会判断旧版本页面将权重或任何其他的指标永久转移到新页面。当搜索引擎看到302HTTP状态码的时候,会假设它不应该将旧页面的历史链接跟权重转移到新的页面,意思是转移后还是会转移回来的。另外,如果做301永久重定向,会导致搜索引擎从索引上(百度、谷歌)删除旧页面并用新页面代替。

主机重定向方法:

(一)linux主机

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

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

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

说明:上述规则是将站点所以访问域名都重定向到www.abc.com(规则中的域名请修改为自己的域名),如果仅想将绑定在站点上某个域名(如:www.123.com)重定向到www.abc.com,规则如下:

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

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

如果有多种需求,如abc.com跳转到www.abc.com qwe.com跳转到www.qwe.com,规则如下:

RewriteEngine On

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

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

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

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

根据自己的需要进行添加修改,然后上传到服务器wwwroot目录,改名为.htaccess即可

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

RewriteEngine on

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

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

抑或者

采用“mod_rewrite”技术,形如:

RewriteEngine on

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

(二)windows主机

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

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

示例代码:

RewriteCond %{HTTP:Host} ^abc.com$

RewriteRule (.*) http://www.abc.com$1 [NC,R=301]

#第一条表示要做跳转的域名,第二条表示要跳转到的域名

#如果有很多域名要做跳转,那么可以将第一条规则改为

RewriteCond %{HTTP:Host} !^www.abc.com$

这样,就表示非www.abc.com的域名访问都会跳转到www.abc.com #多个域名做跳转的第二种方法是,首先复制多个 RewriteCond 项,将域名改好 除了最后一项,其余的 RewriteCond 项最后都要加个参数 [OR]即可。

注意:现在很多虚拟主机都自带301的配置,可以在主机控制面板上生成代码信息,然后按照上面的提示进行301重定向。

(三)vps主机

对于vps主机,你可以直接操控管理后台操作。

(四)Apache 服务器

在Apache 中,有个很重要的文件.htaccess,通过对它的设置,可以实现很多强大的功能,301 重定向只是其中之一。

找到redirect permanent / http://jiangwenseo.com:

redirect permanent /old.html http://jiangwenseo.com:修改这句即可。

(五)用ASP/PHP实现301重定向:

ASP:

Response.Status="301 Moved Permanently"

Response.AddHeader "Location","http://jiangwenseo.com/"

Response.End

PHP:

header("HTTP/1.1 301 Moved Permanently");

header("Location:http://jiangwenseo.com/");

exit();

(六)适用于使用Unix网络服务器的用户

通过此指令通知搜索引擎的spider你的站点文件不在此地址下。这是较为常用的办法。

形如:Redirect 301 / http://jiangwenseo.com/

所以网站改版可以通过301重定向将旧版本页面的所有全部传递到新版本页面上,另外则是对URL做规范化。做301重定向的过程中要明白你为什么要做这个?做完了会起到什么作用!对网站有什么好处?都要仔细的想一想!

留下脚印,证明你来过。

*

*

流汗坏笑撇嘴大兵流泪发呆抠鼻吓到偷笑得意呲牙亲亲疑问调皮可爱白眼难过愤怒惊讶鼓掌