<<<<<<< .mine =======
当前位置: 首页 > SEO > php网站整站301跳转的实现方法

php网站整站301跳转的实现方法

时间:2011-11-02 20:30:01
之前笔者介绍过一个基于IIS环境的静态网站的整站301跳转的做法,最近笔者将php网站的整站301跳转做法也在客户那里实施了一下,在这里跟广大SEOer们分享一下。

本次在客户那里做的整站301跳转的是一个基于joomla开发的一个网站,本来打算采用apache的rewrite规则来实现的,无奈joomla自带了一些rewrite规则,导致做的一些域名的整站跳转有一些问题,最后只好取消掉那种做法。由于joomla系统是基于templates来实现的,所以我就找了一下每个页面都需要运行的模板首页来做,打算将网址的url分拆,然后重组参数,将其拼凑然后再作301跳转。

这次实践,本人也没有鲁莽,先在根目录下新建了一个test目录,test目录下新建了个test.php,然后及时搜索了一下,拼凑出来了解决办法,经过十分钟左右的调试,终于成功实现,将类似这种页面http://www.seotcs.com.cn/test/test.php顺利跳转到了http://www.seotcs.com/test/test.php。

等不及了?好吧,开始分享核心的东西吧,贴出代码:

<?php
$dest_host="www.seotcs.com";
$uri = $_SERVER['REQUEST_URI'];
$http = (isset($_SERVER['HTTPS'])&&$_SERVER['HTTPS']!='off')?'https://':'http://';
//$port = $_SERVER['SERVER_PORT']=='80'?'':':'$_SERVER['SERVER_PORT'];
$url = $http.$dest_host.$uri;
switch ($_SERVER['HTTP_HOST']){
case "seotcs.com.cn":
header('HTTP/1.1 301 Moved Permanently');
header("location:".$url);
break;
case "www.seotcs.cn":
header('HTTP/1.1 301 Moved Permanently');
header("location:".$url);
break;
case "seotcs.com":
header('HTTP/1.1 301 Moved Permanently');
header("location:".$url);
break;
}

//省略后续代码
?>

在代码中,网站的端口暂时没有采用,一般都采用80端口的,就先省略掉了,如果有的网站的页面还有不同端口的页面,则需要将port那部分代码调试一下再使用。

这个是基于joomla框架采用的方法,如果是其它的php网站的整站301跳转,则需要新建一个php页面,例如301.php,将以上跳转的代码复制进去,然后用其它所有的php页面在顶部包含这一页面,就可以了。当然,如果网站的php文件都有类似top的共同页面,也可以将301跳转的语句写在这里。

总结一下,总体的原理就是:将需要跳转的域名,替换成指定的域名,然后将后面的路径及参数都重新组装,保证页面本来路径的正确性。

希望本次经验的分享,对广大站长或者技术爱好者有用,仅此抛砖引玉了。

 

相关文章

网站优化时,该选用相对路径还是绝对路径?

在做网站优化时,网站是该用相对路径还是绝对路径?两者的分别在哪?今天来说明下。 关于绝对路径和相对路径: 1...

9个快速提升网络表现的免费工具

下面给大家介绍几个能够快速提升你的网站排名、转化率以及销量的软件。最重要的是,他们都是免费. 1、Ontolo(o...

详尽介绍seo公司的诞生

从我踏入seo这个行业开始算起,整整过去了三个年头。2008年时候的seo行业,是个创业的好时机,行业正规的从业人员很少...

SEO整站优化项目遇到的困扰

对很多客户来说,SEO是比较陌生的,甚至有时候会对SEO有极大的误解,而整站优化项目是SEO的高级策略,更需要客户的配合...

网站评论的好坏对网站排名的影响

不知道大家还记不记得《百度搜索引擎优化指南1.0》,在其“内容建设”的部分有这么两句话:“Web2.0类型的网站,应该充...
沪ICP备10034044号-12
400-685-0732
400-685-0732 在线咨询