我相信做网站的人都了解过 301 重定向,它可以让网站权重集中,向搜索引擎传达一个友好的信息。但是,相信有不少做站的朋友们使用的虚拟空间无法添加 301 重定向,今天本文就来告诉你在不更换空间的情况下,怎么通过其他的方法来实现 301 重定向。我主要介绍两种方法来实现这个目的:

第一种是软重定向,使用代码进行 301 重定向

虽然我们无法在虚拟空间中设置 301 重定向,但是代码还是可以修改的,所以我们可以对 index 文件进行修改,由于每个程序使用的代码不相同,大家可以自行搜索与自己程序向匹配的 301 重定向代码,我这边以 WordPress 博客为例进行讲解,方法大同小异。

将以下这段代码放入到根目录的 index.php 最开始的地方

$the_host = $_SERVER['HTTP_HOST'];//取得当前域名

if(strtolower($the_host) != 『www.bluefate.org』)//把这里的域名换上你想要的

{ $URIRedirect=$_SERVER['REQUEST_URI']; //获取域名后的参数

if(strtolower($URIRedirect)==」/index.php」)//判断是参数为/index.php 就显示为/

{

$URIRedirect=」/」;

}

header(「HTTP/1.1 301 Moved Permanently」);//发出 301 头部

header(「Location: http://www.baiduzq.com」.$URIRedirect);//跳转到你希望的地址格式

exit();

}

添加这段代码之后,可以将原域名下的所有链接地址定向到对应新域名的地址,即:域名变化,但是参数不变的。这样就巧妙的实现了 301 重定向,同样达到了向搜索引擎传达友好信息的作用。

第二种是通过 DNSPOD 来实现 301 重定向

这个方法是我今天要强烈推荐的,主要是因为这个方法非常的简单,但是效果却是一样可以达到。请看下图

301重定向

在上图中有四个参数,我们需要用到的主要有 A 、 B 、 D 这三个参数。做 301 重定向,首先就是要把记录类型,即参数 B 设置为显性 URL,剩下的就是补充其他的参数,有这两种情况

第一种情况,把不带 WWW 的重定向到带 WWW 的

操作方法:主机记录填写 @(@代表主域名),记录值填写你的目标网址比如 http://www.123.com,这样就可以把 123.com 重定向到 www.123.com

第二种情况,把 A 网址重定向到 B 网址

操作方法:需要添加两条记录,一条是把带 www 的 A 网址的重定向到 B 网址,主机记录填写 www,记录值填写 B 网址,第二条是把不带 WWW 的 A 网址重定向到 B 网址,主机记录填写 @,记录值填写 B 网址。通过这两条记录,就可以把不带 WWW 和带 WWW 的 A 网址重定向到 B 网址了。

这个方法绝大多数人都可以使用,而且不需要空间的支持,希望这篇文章对大家有所帮助,笔者在此只是起到一个抛砖引玉的作用,不足之处还望大家批评斧正。