DedeCms实现301永久重定向代码几种方法
301永久重定向:这是SEO中的一个基础名词,在URL规范化中会用到,也许大家都知道这个名词,但是由于应用的不是非常频繁,导致很多专业做SEO的朋友都不是很熟悉301永久重定向的具体操作方法,今天我就讲解下dedecms301永久重定向的理论,以及实际的操作方法。301永久重定向对SEO无任何不好的影响,而且网页A的关键词排名和PR级别都会传达给网页B,网站更换了域名,表示本网页永久性转移到另一个地址,对于搜索引擎优化|SEO来说,给搜索引擎一个友好的信息,告诉它此页面已永久重定向,避免搜索引擎找不到页面。
方法一:
1:在index.php 头部插入以下代码
if(substr($_SERVER['HTTP_HOST'],0,3) != 'www') { header('HTTP/1.1 301 Moved Permanently'); header('Location:'.$_SERVER['HTTP_HOST']); exit(); }
或者
<?php if(substr($_SERVER['HTTP_HOST'],0,3) != 'www') { header('HTTP/1.1 301 Moved Permanently'); header('Location: '.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']); } ?>
2:需要注意的是如果你用的IIS请在文档优先级中设index.php为默认首页,这样才能先读取php,代码才能生效,以我的域名为例,我是将带www的重定向到不带www域,反之,同理。
代码如下:
<?php $HOST=$_SERVER['HTTP_HOST']; if ($HOST=="zhimengba.com"){ Header("HTTP/1.1 301 Moved Permanently"); Header("Location:"); 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 . "http://www.zhimengba.com/" . $row['templet']); $pv->Display(); ?>
方法二:
当然如何你的虚拟主机支持URL重现最好使用下面办法 针对APACHE服务器
在.htaccess文件里写上以下代码即可。没有.htaccess新建一个即可
RewriteEngine on
RewriteCond %{HTTP_HOST} !^(.*)\.网址\.com$ [NC]
RewriteRule ^(.*)$ 网址.com/ $1 [L,R=301]