首先找到你网站的入口文件,一般都是在根目录里的 index.php 这个文件,用编辑器打开它,在这里推荐您使用 Dreamweaver 这个软件,功能很强大的,如果您电脑上没有安装有这个软件,也可以使用记事本,这就是最简单的编辑器了。
打开了,在所有代码的最前面加上以下代码即可,当然,所指的最前面没有包涵 PHP 标识符,如果连这个都没有了,代码是无法运行的,因为它是 PHP 语言。
先上张图看看吧。
使用说明:
$getUrl= $_SERVER['SERVER_NAME'] 是获得当前输入的 url 地址,也就是说访问者在浏览器地址里输入的域名地址。
$jumpUrl 这个变量是要跳转到的 url 地址,也就是您网站的主域名。
如果您的网站是多个域名访问的,可以保留判断是否是主域名这段代码,如果你只有一个域名进行访问,可以把这一段删除即可,关于如何使用这段代码,在笔者贴上来的代码里有说明,按照说明进行修改就行了。
这些设置好了之后,进行保存,上传到您网站覆盖原来的 index.php 文件,这样,就做好了 301 跳转了。
笔者就拿 www.a.com 和 www.b.com 这两个域名来进行说明,当访问者在浏览器的地址栏输入 a.com 时,自动跳转到 www.a.com ,当访问者在浏览器的地址栏输入 b.com ,或者输入 www.b.com 时,自动跳转到 www.a.com 。
在这里使用到 $_SERVER['SERVER_NAME'] 的 PHP 系统函数获得传进来的域名 URL 。
PHP 里的 substr() 是用来截取字符串的一部分,应该会使用的吧,里面主要有三个参数,第一个参数是传进来的字符串,这个参数是必须的;第二个参数是从第几个开始截取,也是必须的;第三个是截多长的字符串,是可选的。
代码片段:
$getUrl= $_SERVER['SERVER_NAME'];// 获得当前输入的 url
$jumpUrl= 'Location:http://www.a.com';// 要进行跳转的 url
if(substr($getUrl,0,4)!='www.'){// 判断 url 中是否带 www
redirect($jumpUrl);
}
if(substr($getUrl,0,1) == 'b' || substr($getUrl,4,1) == 'b'){// 判断是否是主域名
redirect($jumpUrl);
}
/* 如果有多个域名,可以继续添加
* 不想多解释,你应该明白的,
*/
// 跳转函数
function redirect($jumpUrl){
header('HTTP/1.1 301 Moved Permanently');
header($jumpUrl);// 301 跳转到设置的 url
exit();
}