dedecms织梦程序首页如何去除indexhtml
有的Dede默认生成首页后,首页的链接后面会多出一个indexhtml,官方说法这样有利于网站优化。出于不让首页权重分散考虑,同时也是美观考虑,dede首页的indexhtml还是得去掉好。
下面就给大家分享一下如何去掉织梦首页的indexhtml
方法一:
使用htaccess文件目前使用的是这个办法,试验成功。
方法如下:
在根目录的htaccess里加入以下代码:
DirectoryIndex indexhtml indexphp indexhtm
方法二:
在主机里面设置默认首页顺序:把indexhtml提到最前面。
因主机不同,设置方法也不同,大多数空间都是在空间商会员后台可以改动。例如:万网。
方法三:也是最简单行之有效的办法。
找到根目录下的indexphp文件,找到如下内容
//自动生成HTML版
if(isset($_GET['upcache']) || !file_exists('indexhtml'))
{
require_once (dirname(__FILE__) "/include/commonincphp");
require_once DEDEINC"/arcpartviewclassphp";
$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']);
$row['showmod'] = isset($row['showmod']) $row['showmod'] : 0;
if ($row['showmod'] == 1)
{
$pv->SaveToHtml(dirname(__FILE__)'/indexhtml');
include(dirname(__FILE__)'/indexhtml');
exit();
} else {
$pv->Display();
exit();
}
}
else
{
header('HTTP/11 301 Moved Permanently');
header('Location:indexhtml');
}
>
把上面一大段替换成下面的这段代码
if(!file_exists(dirname(__FILE__)'/data/commonincphp'))
{
header('Location:install/indexphp');
exit();
}
require_once (dirname(__FILE__) "/include/commonincphp");
require_once DEDEINC"/arcpartviewclassphp";
$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();
>
DEDECMS无法生成主页HTML是设置错误造成的,解决方法为:
1、首先,登录网站后台。
2、点击系统选项卡。
3、点击:系统基本参数。
4、点击:核心设置链接。
5、然后将DedeCMS安装目录这一项,修改为当前项目所在的文件夹名称,最后点击确定按钮。
6、网站正常运行了,故障已解决。
关于dedecms织梦程序首页如何去除indexhtml有以下三种解决方法
一、静态访问也分3种解决方法
1、IIS
打开IIS点击文档,里面将indexhtml置于indexphp上面,这有什么作用呢其实这样设置就是在网站同时有indexphp和indexhtml的情况下,先访问index,html这样就不会出现跳转的情况
2、Apache
apache里面DirectoryIndex来控制文件检索优先级的
DirectoryIndex indexhtml indexphp indexhtm
和iis一样,将indexhtml往前放
3、虚拟主机
把网站默认首页indexhtml放到indexphp前面,这样它自动读到indexhtml就不会跳转了
二、直接动态浏览
网站动态访问的情况下,程序会删除根目录下面的Indexhtml
,那么会执行include(dirname(__FILE__)。‘/indexhtml’);这段代码,把首页引用而非跳转。
三、把dedecms的indexphp更为以下内容
GetOne("Select From `#@__homepageset`"); $row['templet'] =
MfTemplet($row['templet']); $pv = new PartView();
$pv->SetTemplet($cfg_basedir $cfg_templets_dir "/" $row['templet']);
$pv->SaveToHtml(dirname(__FILE__)'/indexhtml');
include(dirname(__FILE__)'/indexhtml'); exit(); >
//自动生成HTML版
require_once (dirname(__FILE__) "/include/commonincphp");
require_once DEDEINC"/arcpartviewclassphp";
$GLOBALS['_arclistEnv'] = 'index';
$row = $dsql->GetOne("Select From `#@__homepageset`");
$row['templet'] = MfTemplet($row['templet']);
$pv = new PartView();
$pv->SetTemplet($cfg_basedir $cfg_templets_dir "/"
$row['templet']);
$pv->SaveToHtml(dirname(__FILE__)'/indexhtml');
include(dirname(__FILE__)'/indexhtml');
exit();
>
其实主要就是把那段301定向代码删除
header(‘HTTP/11 301 Moved Permanently’);
header(‘Location:indexhtml’);
可能原因如下:
模板选择不正确或者模板主页为空。
模板主页的地址未设置正确
建议通过浏览器审查元素查看一下具体原因,查看代码有没有正常显示,如果没有那可能就是模板是空文件。
如果实在无法解决,建议付费找人处理。
0条评论