一般在網站權重還不足夠高時,要建子站的話,都是放在二級目錄里面。比如SEO朋友喜歡在二級目錄建博客或論壇,好處是可以繼承主站的權重。當網站足夠強大了,就可以放到二級域名或者其他新域名。
對于搜索引擎來說,二級域名就是新域名,以一個新的站點來看待。如何保證轉移后有效繼承原來的權重不被降權?最好的辦法就是做301。下面具體介紹二級目錄301重定向到二級域名的兩種方法:
一、.htaccess 文件代碼法
這種方法只合適apache服務器,支持rewrite偽靜態。直接在.htaccess 文件中增加這樣一段規則:
RewriteEngine On
RewriteBase /
Redirect permanent /你的目錄地址 http://bbs.dananjie.com/
規則注釋:當訪問(/你的目錄地址)原程序子目錄的時候,自動重定向到你的二級域名http://bbs.dananjie.com/,或者另外的新域名(請把域名網址修改成自己的)。
二、PHP文件代碼法
編寫301.inc.php文件
在網站根目錄新建一個 301.inc.php 文件,寫入以下代碼:
?php
$the_host = $_SERVER['HTTP_HOST']; //取得當前訪問域名
$url = $_SERVER['PHP_SELF']; //獲取域名后的字串,如:/bbs/index.php
$filename= substr( $url , strrpos($url , '/')+1 ); //提取當前文件名
$querystring = $_SERVER["QUERY_STRING"]; //獲取問號后面的參數
if ($the_host !== 'bbs.dananjie.com') //驗證當前訪問域名(就是你的新域名):若非引號內的域名,則進行如下跳轉——
{
if ($querystring !== '') //驗證文件名后是否有參數,如果有參數則跳轉到——
{
header('HTTP/1.1 301 Moved Permanently'); //發出301頭部,表明永久重定向
header('Location: http://bbs.dananjie.com/'.$filename.'?'.$querystring); //跳轉到我的新域名地址【帶參數】
}
elseif ($filename == 'index.php') //如果是主頁則直接跳轉到新域名
{
header('HTTP/1.1 301 Moved Permanently'); //發出301頭部,表明永久重定向
header('Location: http://bbs.dananjie.com/'); //跳轉到我的新域名
}
else //如果無參數則跳轉到——
{
header('HTTP/1.1 301 Moved Permanently'); //發出301頭部,表明永久重定向
header('Location: http://bbs.dananjie.com/'.$filename); //跳轉到我的新域名地址【不帶參數】
}
}
?>
保存后,上傳網站根目錄。
注:代碼中的二級域名bbs.dananjie.com替換為你的域名。
PHP頁面增加跳轉
在每一個需要跳轉的PHP頁面的 ?php 下面加一行代碼實現301跳轉:
include("301.inc.php"); //301重定向
刷新后,就可以測試效果了。至于是哪些頁面,要根據你用的程序來。如Discuz 論壇通常需要跳轉的是以下幾個頁面:
index.php,forum.php,home.php,group.php,member.php,portal.php,space.php