使用PHP让动态链接301重定向至静态文件

作者:enenba | 发表于:2012-03-15 10:11 | 分类:php源码

       使用PHP让动态链接301重定向至静态文件。为了让搜索引擎已经收录的动态的地址转向至静态的。有利于SEO哦
 我就不用rewrite了,用PHP实现 

       效果如下

 'http://127.0.0.1/?id=12'  转换为  'http://127.0.0.1/12.html',
 已经符合xx.html格式的不301跳转

 说多了,上代码:

<?php

/*
	PHP让动态链接301重定向
	如:让http://127.0.0.1/?id=xxx 跳转到 http://127.0.0.1/xxx.html
	$host str 目标URL部分
	$preg str 正则表达式
*/
function header301($preg,$url) {
	$urlquery = $_SERVER['QUERY_STRING'];
	if( $r = preg_replace($preg,$url,$urlquery)) {
		header( "HTTP/1.1 301 Moved Permanently" );
		header( "Location: ".$r );
	}
}

// 例子1
// http://127.0.0.1/?id=xxx 跳转到 http://127.0.0.1/xxx.html
$rewriteurl = 'http://127.0.0.1/$1.html';
$preg = '/id=(\d+)/i';
header301($preg,$rewriteurl);

// 例子2
// http://127.0.0.1/?id=xxx&page=yyy 跳转到 http://127.0.0.1/xxx_yyy.html
/*
$rewriteurl = 'http://127.0.0.1/$1_$2.html';
$preg = '/id=(\d+)&page=(\d+)/i';
header301($preg,$rewriteurl);
*/
?>

 如果要俩个同时同时实现怎么办?我还要想想怎么弄吧………………

 

待续

上一篇: 将HTML表格的每行每列转为数组,PHP采集表格数据   |   下一篇:php获取指定标记中的内容» 标签: php源码 php函数 PHP正则

评论:

2012-06-11 23:17

最近学习PHP中.
自学的人啊,伤不起..

2012-06-11 23:25

我也刚入门,互相学习学习嘛。