DEDECMS做301重定向的方法是在DedeCMS根目录下index.php文件后,将默认首页更改成index.php,刷新即可看到301重定向的效果。 方法/步骤 第一步:把DedeCMS根目录下index.php原文件换成以下内容: <?php $HOST=$_SERVER['HTTP_HOST']; if ($HOST==”laiquliu.com” || $HOST==”piminjie520.082.xindns.org”){ Header(“HTTP/1.1 301 Moved Permanently”); Header(“Location:http://www.laiquliu.com”); exit(); } if(!file_exists(dirname(__FILE__).’/data/common.inc.php’)) { header(‘Location:install/index.php’); exit(); } //自动生成HTML版 require_once (dirname(__FILE__) . “/include/common.inc.php”); require_once DEDEINC.”/arc.partview.class.php”; $GLOBALS['_arclistEnv'] = ‘index’; $row = $dsql->GetOne(“Select * From`dede_homepageset`”); $row['templet'] = MfTemplet($row['templet']); $pv = new PartView(); $pv->SetTemplet($cfg_basedir . $cfg_templets_dir . “/” . $row['templet']); $pv->Display(); ?> 上传并覆盖。 第二步:进入空间控制面版,把默认首页更改成index.php,刷新即可看到301重定向的效果。 注意文件上传过程中一定要传到跟目录下面,其次主要修改以后一定要保存,并注意编码形式,上传覆盖后记得重新生成。 另外一种方法:仅作你参考 以上数据暴露出几个严重的SEO问题: 1、主域与www域之间的跳转问题 2、域访问与默认首页之间的跳转问题 3、页面可以打开但是状态码返回的不是200 上述SEO问题的处理逻辑: 1、通常情况下,网站主要使用www域,而不使用主域(国内网民的访问习惯),考虑到SEO因素,为了避免复制网页问题,一般会将主域做301跳转然后重定向到www二级域,这样搜索引擎就不会收录两个版本的网站首页,也避免了页面权重分流。 2、域访问与默认首页之间本不应该存在任何跳转动作。试想一下,如果直接访问网站域名却发生了跳转,无论是301还是302,首页权重都会被降低,这对SEO而言是多么可怕的一件事情,首页低权重,内页也在劫难逃!正确的SEO处理方式是:访问域时,直接返回200。以DedeCMS为例,如果网站的默认首页不是index.html或者index.php优先级高于index.html,当以域方式访问网站首页时,程序默认设置为URL发生301跳转至index.html。 3、用工具全面检测下页面Http状态码,确认页面200。 DeDeCMS解决www域跳转与默认首页跳转问题的方法: 修改根目录下的index.php文件,用以下代码进行替换: PHP代码 //主域名301跳转到www $redirect301=1; //301跳转开关,1代表打开,0代表关闭 $index_file=‘index.html’; //指定网站默认首页文件,DeDeCMS设置为index.html,不支持SSI(shtml/shtm) if(substr($_SERVER['SERVER_NAME'],0,4)!='www.'&&$redirect301) //判断URL中是否带www { header('HTTP/1.1 301 Moved Permanently'); header('Location:http://www.'.$_SERVER['SERVER_NAME']); //301跳转到www exit(); } if(!file_exists(dirname(__FILE__).'/data/common.inc.php')) { header('Location:install/index.php'); exit(); } //自动生成HTML版 if(isset($_GET['upcache'])) { require_once (dirname(__FILE__). "/include/common.inc.php"); require_once DEDEINC."/arc.partview.class.php"; $GLOBALS['_arclistEnv'] = 'index'; $row = $dsql->GetOne("Select * From `dede_homepageset`"); $row['templet']= MfTemplet($row['templet']); $pv = new PartView(); $pv-》SetTemplet($cfg_basedir .$cfg_templets_dir ."/". $row['templet']); $pv-》SaveToHtml(dirname(__FILE__).'/index.html'); include(dirname(__FILE__).'/index.html'); exit(); } include(dirname(__FILE__).'/'.$index_file); //联接网站默认首页文件 ?> (责任编辑:laiquliu) |