初用DEDECMS的朋友会发现,织梦CMS安装完成以后,访问首页,网址后面会自动带上一index.html,比如我们在网址栏输入https://www.pinzixing.com/,网页打开以后网址栏就会显示https://www.pinzixing.com/index.html这样一个网址。
搜索引擎会认为/和/index.htm是两个不同的页面,输入域名马上就转接到www.pinzixing.com/index.html的,这样路径变长,也不利于SEO,还会分散权重,默认的DEDECMS首页生成静态后,打开我们所用DEDECMS搭建的网站会在域名后面加上index.html路径,一来看的不是太美观,二来传言对SEO有所影响。
网上有很多方法,品自行博客只介绍最简单最好的去掉织梦DEDECMS首页网址后面index.html的办法。
最好的方法就是把DEDECMS根目录下的index.php文件按照以下代码进行替换:
织梦CMS默认的index.php代码:
//自动生成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(); } else { header('HTTP/1.1 301 Moved Permanently'); header('Location:index.html'); } ?>
将以上的代码全部替换为下面的代码即可。
<?php if(!file_exists(dirname(__FILE__).'/data/common.inc.php')) { header('Location:install/index.php'); exit(); } 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(); ?>
替换以后,在后台生成首页html页面,就会根目录会生成index.html文件,然后访问首页地址的时候,会默认访问index.html这个页面,当然前提是在主机或者服务器后台将默认首页index.html的优先级设置最高。
以上就是全部关于去掉织梦DEDECMS首页网址后面index.html的方法。
评论