301重定向函数怎么调用?

2016-07-07 15:02 来源:www.chinab4c.com 作者:ecshop专家

今天在论坛找了这个函数

function chk301(){
@$rewriteurl=$_SERVER['REDIRECT_URL'];
empty($rewriteurl) && $rewriteurl='/';
$tmpSelfUrl='';
@$tmpcat_id=$_GET['cat_id'];
$tmpcat_id=(!empty($tmpcat_id)) ? '-' . intval($tmpcat_id) : '';
@$tmpId=$_GET['id'];
$tmpId=(!empty($tmpId)) ? '-' . intval($tmpId) : '';
@$tmpPage=$_GET['page'];
$tmpPage=(!empty($tmpPage)) ? '-' . intval($tmpPage) : '';
$toUrl='';
$tmpDomain=$_SERVER['HTTP_HOST'];
($tmpDomain != 'hx') && $tmpDomain='www.xiaoshangpin.com';
if($rewriteurl=='/'){
$tmpSelfUrl=$_SERVER['PHP_SELF'];
if(strpos($tmpSelfUrl,'category.php')){
$tmpId.='-b0';
$toUrl='cat';
}
elseif(strpos($tmpSelfUrl,'goods.php') && false === strpos($_SERVER['QUERY_STRING'],'act='))
$toUrl='pro';
elseif(strpos($tmpSelfUrl,'order_all.php')){
if($tmpPage != '' && $tmpId == '')
$tmpId='-0';
($tmpPage != '') && $tmpPage=str_replace('-','-p',$tmpPage);
$toUrl='order_all';
}
elseif(strpos($tmpSelfUrl,'article.php'))
$toUrl='art';
elseif(strpos($tmpSelfUrl,'products.php')){
if(@empty($_SERVER['QUERY_STRING']))
$toUrl='products';
else
$toUrl='p';
}
elseif (strpos($tmpSelfUrl,'message.php'))
$toUrl='message';
elseif(strpos($tmpSelfUrl,'article_cat.php'))
$toUrl='artcat';
elseif(strpos($tmpSelfUrl,'brand.php'))
$toUrl='pinpai';
elseif (strpos($tmpSelfUrl,'snatch.php'))
$toUrl='snatch';
elseif(strpos($tmpSelfUrl,'group_buy.php'))
$toUrl='group_buy';
elseif(strpos($tmpSelfUrl,'auction.php'))
$toUrl='auction';
elseif(strpos($tmpSelfUrl,'exchange.php'))
$toUrl='exchange';
else
$toUrl='';
if($toUrl != ''){
$toUrl='http://'.$tmpDomain.'/'.$toUrl.$tmpId.$tmpcat_id.$tmpPage.'.html';
Header("HTTP/1.1 301 Moved Permanently" );
Header("Location: ".$toUrl);
exit;
}
}
if($_SERVER['HTTP_HOST'] != 'www.xiaoshangpin.com' && $_SERVER['HTTP_HOST'] != 'hx'){
if($rewriteurl != '/'){
$toUrl=$rewriteurl;
}elseif($_SERVER['PHP_SELF']=='/index.php'){
$toUrl='/';
}else{
$toUrl=$_SERVER['PHP_SELF'];
$toUrl.=(empty($_SERVER['QUERY_STRING']))?'':'?'.$_SERVER['QUERY_STRING'];
}

Header("HTTP/1.1 301 Moved Permanently" );
Header("Location: http://".$tmpDomain.$toUrl);
exit;
}
}

我按照要求加了init.php这个页面了,不知道在哪调用,还请朋友们给个详细的,谢谢了

回答:
不需要。你需要在apache里面和 规则里面写好 301 状态就可以



我的是WIN主机,伪静态的功能已经开启了 HTTPED.INC里面的文件已经写好了

可是就是不生效

www.aieyes.net这个是我的网站,麻烦高手看下,找了N天找不到

在服务器上定一下就好了,我的www.kylfs.com在服务器上做了一下301重定向
不过奇怪的是site带www和不带www出来的数量还是不一样