dedecms如何去掉首页indexhtml的方法

dedecms如何去掉首页indexhtml的方法,第1张

首先在dede后台开启伪静态(开启的方法在系统参数-核心设置)

第一步 首先栏目和文章最好设置成动态浏览 这样才不会生成静态html文件

第二步 设置重写规则 在系统目录下加一个 htaccess文件 内容为:

复制代码

代码如下:

RewriteEngine On

RewriteRule ^plus/list-([0-9]+)html$ /plus/listphptid=$1

RewriteRule ^plus/list-([0-9]+)-([0-9]+)-([0-9]+)html$ /plus/listphptid=$1&totalresult=$2&PageNo=$3

RewriteRule ^plus/view-([0-9]+)-1html$ /plus/viewphparcID=$1

RewriteRule ^plus/view-([0-9]+)-([0-9]+)html$ /plus/viewphpaid=$1&pageno=$2

iis文件写法

复制代码

代码如下:

#首页伪静态规则,如果不使用动态首页,请勿必删除这一行,否则打开首页会出现死循环

RewriteRule ^()/indexhtml $1/indexphp [I]

#列表页伪静态规则

RewriteRule ^()/category/list-([0-9]+)html $1/plus/listphptid=$2 [I]

RewriteRule ^()/category/list-([0-9]+)-([0-9]+)-([0-9]+)html $1/plus/listphptid=$2&TotalResult=$3&PageNo=$4 [I]

#文章页伪静态规则

RewriteRule ^()/archives/view-([0-9]+)-([0-9]+)html $1/plus/viewphparcID=$2&pageno=$3 [I]

#搜索伪静态规则

RewriteRule ^()/searchhtml(:()) $1/searchphp$2 [I]

#TAG标签伪静态规则

RewriteRule ^()/tagshtml $1/tagsphp [I]

RewriteRule ^()/tags/()(:()) $1/tagsphp/$2 [I]

RewriteRule ^()/tags/()/(:()) $1/tagsphp/$2/ [I]

RewriteRule ^()/tags/()/([0-9])(:()) $1/tagsphp/$2/$3 [I]

RewriteRule ^()/tags/()/([0-9])/(:()) $1/tagsphp/$2/$3/ [I]

如果你的系统支持url重写,到这里就可以用伪静态访问了

第三步更改重写的URL

如果用默认的设置, 访问的URL是:

复制代码

代码如下:

http://wwwXXXXcom/plus/view-131-1html

这样的形色, 我们是可以更改这种样式的

找到文件/include/helpers/channelunithelperphp打开

可以看到有这样的语句

复制代码

代码如下:

return $GLOBALS["cfg_plus_dir"]"/view-"$aid'-1html';

这就是文章的url形色

$reurl = $GLOBALS['cfg_phpurl']"/listphptid="$typeid;

这是列表的重写url

可以使url更短一点,完成可以写成:

复制代码

代码如下:

return "/view-"$aid'-1html';

$reurl = "/list-"$typeid"html";

这时重写规则也要更新

复制代码

代码如下:

RewriteEngine On

RewriteRule ^list-([0-9]+)html$ /plus/listphptid=$1

RewriteRule ^list-([0-9]+)-([0-9]+)-([0-9]+)html$ /plus/listphptid=$1&totalresult=$2&PageNo=$3

RewriteRule ^view-([0-9]+)-1html$ /plus/viewphparcID=$1

RewriteRule ^view-([0-9]+)-([0-9]+)html$ /plus/viewphpaid=$1&pageno=$2

更进一步,还可以把view换成自己的任何词语,这也要把include/arcarchivesclassphp文件中的view也一样替换。

发布选项: 生成HTML 仅动态浏览 发文章的时候选一下也不多事。为了以后升级 尽量减少修改文件。

以下这没有试,大家按需要测试吧~~

修改数据库

将所有文档设置为“仅动态”,可以进入数据库管理中,执行下面命令:

复制代码

代码如下:

update dede_archives set ismake=-1

并将ismake的默认值设置为 -1即动态。

将所有栏目设置为“使用动态页”,可以进入数据库管理中,执行下面命令:

复制代码

代码如下:

update dede_arctype set isdefault=-1

DedeCmsTAG标签伪静态

DedeCms默认的TAG标签URL,形如/tagsphp/dedecms57/,非常之难看。打开/include/taglib/taglibphp,找到lib_tag()函数下的:

复制代码

代码如下:

$row['link'] = $cfg_cmsurl"/tagsphp/"urlencode($row['keyword'])"/";

替换为

$row['link'] = $cfg_cmsurl"/tags/"urlencode($row['keyword'])"/";

修改分页代码

我们需要修改include/arctaglistclassphp,将分页函数替换为:

复制代码

代码如下:

/ 获取动态的分页列表

@access public

@param int $list_len 列表宽度

@param string $listitem 列表样式

@return string

/

function GetPageListDM($list_len,$listitem="info,index,end,pre,next,pageno")

{

$prepage="";

$nextpage="";

$prepagenum = $this->PageNo - 1;

$nextpagenum = $this->PageNo + 1;

if($list_len == "" || preg_match("/[^0-9]/", $list_len))

{

$list_len = 3;

}

$totalpage = $this->TotalPage;

if($totalpage <= 1 && $this->TotalResult > 0)

{

return "<span class="pageinfo">共1页/"$this->TotalResult"条</span>";

}

if($this->TotalResult == 0)

{

return "<span class="pageinfo">共0页/"$this->TotalResult"条</span>";

}

$maininfo = "<span class="pageinfo">共{$totalpage}页/"$this->TotalResult"条</span>rn";

$purl = $this->GetCurUrl();

$basename = basename($purl);

$tmpname = explode('', $basename);

$purl = str_replace($basename, '', $purl)urlencode($this->Tag);

//var_dump($purl);exit;

//$purl = "/"urlencode($this->Tag);

//获得上一页和下一页的链接

if($this->PageNo != 1)

{

$prepage="<li><a href='"$purl"-$prepagenum'html>上一页</a></li>rn";

$indexpage="<li><a href='"$purl"-1html'>首页</a></li>rn";

}

else

{

$indexpage="<li><a>首页</a></li>rn";

}

if($this->PageNo!=$totalpage && $totalpage>1)

{

$nextpage="<li><a href='"$purl"-$nextpagenumhtml'>下一页</a></li>rn";

$endpage="<li><a href='"$purl"-$totalpagehtml'>末页</a></li>rn";

}

else

{

$endpage="<li><a>末页</a></li>rn";

}

//获得数字链接

$listdd="";

$total_list = $list_len 2 + 1;

if($this->PageNo >= $total_list)

{

$j = $this->PageNo - $list_len;

$total_list = $this->PageNo + $list_len;

if($total_list > $totalpage)

{

$total_list = $totalpage;

}

}

else

{

$j=1;

if($total_list > $totalpage)

{

$total_list = $totalpage;

}

}

for($j; $j<=$total_list; $j++)

{

if($j == $this->PageNo)

{

$listdd= "<li class="thisclass"><a>$j</a></li>rn";

}

else

{

$listdd="<li><a href='"$purl"-$jhtml'>"$j"</a></li>rn";

}

}

$plist = '';

if(preg_match('/info/i', $listitem))

{

$plist = $maininfo' ';

}

if(preg_match('/index/i', $listitem))

{

$plist = $indexpage' ';

}

if(preg_match('/pre/i', $listitem))

{

$plist = $prepage' ';

}

if(preg_match('/pageno/i', $listitem))

{

$plist = $listdd' ';

}

if(preg_match('/next/i', $listitem))

{

$plist = $nextpage' ';

}

if(preg_match('/end/i', $listitem))

{

$plist = $endpage' ';

}

return $plist;

}

一、dede后台开启伪静态

二、修改 /include/taglib/taglibphp

找到

$row['link'] = $cfg_cmsurl”/tagsphp/”urlencode($row['keyword'])”/”;

改成

$row['link'] = $cfg_cmsurl”/tags/”urlencode($row['keyword'])”html”;

三、打开templets/default/taglisthtm

找到

<strong>当前位置:</strong>:<a href=”{dede:globalcfg_cmsurl/}/”>主页</a> > <a href=’tagsphp’>TAG标签</a> > {dede:fieldtitle /}

修改为

<strong>当前位置:</strong>:<a href=”{dede:globalcfg_cmsurl/}/”>主页</a> > <a href=’/tagshtml’>TAG标签</a> > {dede:fieldtitle /}

四、httpdini 或者 htaccess 文件里加

RewriteRule ^()/tags\html $1/tags\php

RewriteRule ^()/tags/()html $1/tags\php\$2

dedecms如何去掉首页indexhtml出现的原因是动态PHP转换为静态html的原因,去除方法如下:

第一种、伪静态设置代码,具体操作如下:

在主机里面找到伪静态文件htaccess,下载到本地,用编辑器打开,在里面加入以下代码DirectoryIndex indexhtml indexphp indexhtm然后在上传至主机。

第二种、在网站虚拟主机里面把网站默认首页indexhtml放到indexphp前面,具体如下图:

其实网站形态分两种,静态和动态,伪静态并不是真正的静态,实质上也是动态页面

静态页面,除了我们常见的htm和 html以后,asp php jsp也可以是静态的,关键是看asp php jsp这些页面是否调用了数据库里的东西,如果没有调用,它就是静态页面,调用了,就是动态页面。

动态页面的含意就是,网页会根据访问者的请求,从服务器数据库里筛选访问者想要的内容显示到访问者的浏览器上,不同的人访问同一页面,会看到不同的内容,这个网页本身里并没有数据,只有一些代码,访问者看到的,都是服务器里调出来的。

而静态页面,是事先把文字都放到页面里了,不需要从数据库里调,访问者访问一个页面,会直接从服务器把这个页面读出来显示到访问者的浏览器里,不需要数据库的支持。

伪静态页面,其目的是为了更好的被搜索引擎收录而通过一定的规则,把动态页面的地址转换成以htm或html结尾的地址,看起来是静态的,实际是依然是动态页面。

现在很多CMS网站程序,都可以把动态页面直接生成真静态的,就是所访问的页面是真真实实存的,根静态页面一样。这样的好处是访问速度快,不需要频繁去读取筛选服务器里的数据,减轻了服务器的压力,同时也能更好地被搜索引擎收录。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » dedecms如何去掉首页indexhtml的方法

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情