怎样做好301永久重定向?
首先我们这里要知道什么是301定向。
301永久重定向:这是SEO中的一个基础名词,在URL规范化中会用到,也许大家都知道这个名词,但是由于应用的不是非常频繁,导致很多专业做SEO的朋友都不是很熟悉。301永久重定向的具体操作方法以及实际的操作方法。
301永久重定向的概念:
网址重定向最为可行的一种办法。当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。
上面那段话是简述了301永久重定向的概念,那为什么要如此重视301永久重定向呢?
原因:301永久重定向是所有的重定向方法中唯一符合搜索引擎规则的重定向方法,其他的重定向还包括302暂时重定向和JS跳转等,这些方式都容易导致URL不规范问题的产生。所以说如果你有多个域名都希望可以让他们访问同一个网站,那就只能将其中一个做为主域名,剩下的其他域名做301永久重定向到这个主域名,只有这样才可以完美的让多个域名都访问一个站点,不会产生重复收录,导致网站被惩罚的现象。
重定向说白了就是通过各种的方法将各种网络请求重新定个方向转到其它位置。如:
网页中的重定向
域名的重定向
路由选择的变化也是对数据报文经由路径的一种重定向
在我们的网站建设中,时常会遇到需要网页重定向的情况:象网站调整,如改变网页目录结构,网页被移到一个新地址,再或者,网页扩展名改变,如因应用需要把.php改成.Html或.shtml,在这种情况下,如果不做重定向,则用户收藏夹或搜索引擎数据库中旧地址只能让访问客户还会得到一个404页面错误信息,访问流量白白丧失;再如某些注册了多个域名的网站,也需要通过重定向让访问这些域名的用户自动跳转到主站点,等等。
常用的重定向方式有: 301 redirect, 302 redirect 与 meta fresh:
301 redirect: 301代表永久性转移(Permanently Moved),301重定向是网页更改地址后对搜索引擎友好的最好方法,只要不是暂时搬移的情况,都建议使用301来做转址。
302 redirect: 302代表暂时性转移(Temporarily Moved ),在前些年,不少Black Hat SEO曾广泛应用这项技术作弊,目前,各大主要搜索引擎均加强了打击力度,象Google前些年对Business.com以及近来对BMW德国网站的惩罚。即使网站客观上不是spam,也很容易被搜寻引擎容易误判为spam而遭到惩罚。
301永久重定向的执行方法:
永久重定向有几种不同的做法,在windows主机上和Unix/Linux主机是不同的。
一、在windows主机上设置的方法:可以在IIS服务器上设置也可以在代码中设置。
1、在IIS服务器上设置301的方法:
这种设置方法需要有一个先天条件,那就是你有服务器的管理权,你可以直接操作IIS服务器,并且可以随意开通新的虚拟主机,否则你只能用修改网站代码的方法。
首先开通一个新的虚拟主机,将你需要做301永久重定向的域名正常与该空间绑定,这个绑定的方法你可以咨询服务器托管商。
然后打开“控制面板”→找到“管理工具”→打开“Internet 信息服务”。打开后,可以在管理器左侧树形菜单中找到你的网站,然后右击选择“属性”,打开网站的属性管理面板,并且选择到“主目录”选项卡,选择“重定向到URL”,然后在地址框中输入“主域名”,然后将选项卡中的“资源的永久重定向”选择上,点击确定即可设置完毕。
2、在网站代码中设置301的方法:
只需要将以下代码加在网页的开头即可,不过只能用在ASP和PHP文件中,HTML目前无法通过代码设置301。
ASP代码:
<%@ Language=VBScript %>
<%
Response.Status=”301 Moved Permanently” Response.AddHeader “Location” , ” http://www.seosir.cc”
>
PHP代码:
<?
Header( “HTTP/1.1 301 Moved Permanently” );
Header( “Location: http://www.seosir.cc” );
?>
注:将我的网址替换成你自己的定向后的目标网址即可,所有的标点必须用英文半角。
二、如果你用的是Unix/Linux主机:可以用.htaccess文件。
比如把/old.htm转到/new.htm,可以用这个指令:redirect 301 /old.htm /new.htm。如果要把所有http://seosir.cc形式的URL用301重定向转到 http://www.seosir.cc。包括所有的目录和内页也转向到新域名的相应位置,那就要用到mod_rewrite,书写格式如下:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^seosir.cc [NC]
RewriteRule ^(.*)$ http://www.seosir.cc/$1 [L,R=301]
三、其他方法301定向方法。
当然还有些301的定向方法,比如空间的跳转功能等,这里就不一一举出,也不推荐使用其他方法,最常用的方法不能说是最好的,但肯定是大家认可很优的方法,推荐大家自己调试尝试做一下。