很多时候,由于某种原因,部分站长弃老域名而启用新域名;
或者,规模较大的公司,经常使用多个域名指向同一个网站;
一个域名的PR值,据说比较重要,关系到该网站在搜索引擎中的排名问题,进而直接影响到网站的流量。
那么,当我们弃老域名而使用新域名的时候,如何将老域名的PR值转移到新域名呢,或者,多个域名同指向一个网站的时候,如何将多个域名的PR值统统都转到最正规的那个域名上面呢?
呵呵,关于PR的转移,如果不是听别人说起,我还真不知道世上居然有这事。
下面,我们就一起来学习关于PR在不同域名之间的转移知识吧!
一、301转向知识
301转向(或叫301重定向,301跳转),指的是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。其它常见的状态码还包括,200表示一切正常,404网页找不到,302暂时转向,等等。
二、为什么要用301转向
网址转向方法主要包括:301转向,302转向,JavaScript转向,PHP/ASP/CGI转向,META REFRESH网页META刷新,等。但,建议别使用302转向,至于为什么,就不说了,因为存在过敏的问题,因此不作讨论。
当网页A用301重定向转到网页B时,搜索引擎可以肯定网页A永久的改变位置,或者说实际上不存在了,搜索引擎就会把网页B当作唯一有效目标。这样做的好处是:
①没有网址规范化问题;
②网页A的PR网页级别会传到网页B;
三、如何做301域名转向
①Unix/Linux主机
可以用.htaccess文件(用于目录特定指令如密码,转向,错误处理等的文件)。
比如把/old.htm转到http://www.XXX.net/new.htm,可以用这个指令:
redirect 301 /old.htm http://www.XXX.net/new.htm
或
redirect permanent /old.htm http://www.XXX.net/new.htm
如果要把所有http://XXX.net形式的URL用301重定向转到http://www.XXX.net,包括:
http://XXX.net/about.htm
转到 http://www.XXX.net/about.htm
以及
http://XXX.net/dir/index.htm
转到 http://www.XXX.net/dir/index.htm
等等,同时还要用到mod_rewrite:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain.com [NC]
RewriteRule ^(.*)$ http://www.XXX.net/$1 [L,R=301]
②Windows主机
可以在控制面板做301转向设定。
据说,HTML无法做301转向。在HTML里只能做JS或META REFRESH,但不是301转向。HTML一被读取,就已经返回200 OK状态码了。
如果你的页面是ASP或PHP还可以做301转向:
ASP:
<%@ Language=VBScript %>
<%
Response.Status=”301 Moved Permanently” Response.AddHeader “Location”, ” http://www.XXX.net”
>
PHP:
Header( “HTTP/1.1 301 Moved Permanently” );
Header( “Location: http://www.XXX.net” );
?>
另外,DOThtaccess文件只是一个普通文本文件,用记事本创建这个文件,放上指令,存在网站的根目录下就行了。不必修改Apache。