星联网络专注帝国CMS二次功能插件开发-精品网站模板站长代码素材

  • 最近更新
  • 模板:33
  • 记录:12641|
  • 插件:52|
  • 工具:4|
  • 代码:8|
  • 评论:0

织梦dedecms默认首页及www的301跳转

前言

本文主要讲解《织梦dedecms默认首页及www的301跳转》的详细内容

这是我在织梦dedecms到最后上线的时候遇到的一个特别棘手的问题。本来租的是空间,在不找空间服务商解决或者空间不支持的的情况下: 第一个方法: 很多时候,客户朋友想要做一些默认首页及WWW域的301跳转,今天,企业网站源码为大家带来方法:大多数人可能会想当然的认为首页返回的肯定是200,因为我们很容易观察到首页能否可以正常打开以及URL是否发生过明显跳转,然而,真的如我们预想的那样吗!在近期接手的SEO项目里,我们就遇到类似的问题: 以上数据暴露出几个严重的SEO问题: 1、主域与www域之间的跳转问题 2、域访问与默认首页之间的跳转问题 3、页面可以打开但是状态码返回的不是200 上述SEO问题的处理逻辑: 1、通常情况下,网站主要使用www域,而不使用主域(国内网民的访问习惯),考虑到SEO因素,为了避免复制网页问题,一般会将主域做301跳转然后重定向到www二级域,这样搜索引擎就不会收录两个版本的网站首页,也避免了页面权重分流,具体实现方法,可以参考文章“如何实现两个域名内页之间的301跳转” 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代码 <?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); //联接网站默认首页文件 ?> 以上就是织梦dedecms网站默认首页及www域的301跳转。 以上办法只能解决首页的www跳转,而内容页还是跳转不了,下面这个方法通过.htaccess文件实现所有页面的跳转 Options +FollowSymLinks RewriteEngine On RewriteCond %{HTTP_HOST} ^9iphp.com [NC] RewriteRule ^(.*)$ http://9iphp.com/$1 [L,R=301] 第二种方法: 空间的默认首页顺序修改为 index.html index.php 具体操作: 独立主机用户:修改apache配置文件httpd.conf 中 <IfModule dir_module> DirectoryIndex index.html index.php index.php index.htm </IfModule> 虚拟空间用户:到空间商提供的管理后台,修改默认首页 。

本网刊登的文章均仅代表作者个人观点,并不代表本网立场。文中的论述和观点,敬请读者注意判断。

本文地址:http://www.xlkjgs.com/notes/web/6918.html

以上内容由本站整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

星联网络

星联网络是中国最具实战的互联网创业者的知识服务商,这里有互联网行业动态,网络推广,SEO优化,SEM优化,ESC配置,行业经验分型,互联网项目,微信营销、淘宝客赚钱、新媒体营销、京东运营、跨境电商等众多互联网营销知识分享

站长运营站长必备网站运营之道才能长久发展