当前位置:首页 > CMS教程 > DeDecms > 列表

DedeCMS V5.7 开启伪静态的重写设置 列表、文章教程

发布:smiling 来源: PHP粉丝网  添加日期:2015-05-07 16:27:11 浏览: 评论:0 

DedeCMS V5.7 我们用到最多的肯定是html页面了,但有时我们希望使用伪静态了,那么DedeCMS V5.7 url重写怎么设置呢,下面小编就来为各位介绍dedecms 列表、文章配置教程.

DEDE虽然可以生成静态页面,也可以重写成为伪静态,在后台有设置可以开启伪静态,开启后还要经过一定的设置才能使用.

1、首先栏目和文章最好设置成动态浏览,这样才不会生成静态html文件.

2、设置重写规则,在系统目录下加一个 .htaccess文件,内容为:

  1. RewriteEngine On 
  2. RewriteRule ^plus/list-([0-9]+)\.html$ /plus/list.php?tid=$1 
  3. RewriteRule ^plus/list-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /plus/list.php?tid=$1&totalresult=$2&PageNo=$3 
  4. RewriteRule ^plus/view-([0-9]+)-1\.html$ /plus/view.php?arcID=$1 
  5. RewriteRule ^plus/view-([0-9]+)-([0-9]+)\.html$ /plus/view.php?aid=$1&pageno=$2 

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

3、更改重写的URL

如果用默认的设置,访问的URL是:http://www.phpfensi.com/plus/view-131-1.html,这样的形式 我们是可以更改这种样式的,找到文件/include/helpers/channelunit.helper.php打开,可以看到有这样的语句:

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

这就是文章的url形式.

$reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;

这是列表的重写url,可以使url更短一点,完成可以写成:

return "/view-".$aid.'-1.html'; 和 $reurl = "/list-".$typeid.".html";

这时重写规则也要更新.

  1. RewriteEngine On 
  2. RewriteRule ^list-([0-9]+)\.html$ /plus/list.php?tid=$1 
  3. RewriteRule ^list-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /plus/list.php?tid=$1&totalresult=$2&PageNo=$3 
  4. RewriteRule ^view-([0-9]+)-1\.html$ /plus/view.php?arcID=$1 
  5. RewriteRule ^view-([0-9]+)-([0-9]+)\.html$ /plus/view.php?aid=$1&pageno=$2 

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

发布选项:生成HTML 仅动态浏览 发文章的时候选一下也不多事,为了以后升级 尽量减少修改文件,以下这没有试,大家按需要测试吧~~

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

update dede_archives set ismake=-1

并将ismake的默认值设置为 -1即动态,将所有栏目设置为“使用动态页”,可以进入数据库管理中,执行下面命令:

update dede_arctype set isdefault=-1

WIN下伪静态规则:

  1. HTTP.INI 
  2. [ISAPI_Rewrite] 
  3. # 缓存3600秒 = 1 小时(hour) 
  4. CacheClockRate 3600 
  5. RepeatLimit 32 
  6. RewriteRule ^(.*)/index\.html $1/index\.html 
  7. RewriteRule ^(.*)/list-([0-9]+)\.html $1/plus/list\.php\?tid=$2 
  8. RewriteRule ^(.*)/list-([0-9]+)-([0-9]+)-([0-9]+)\.html $1/plus/list\.php\?tid=$2&TotalResult=$3&PageNo=$4 
  9. RewriteRule ^(.*)/view-([0-9]+)-([0-9]+)\.html $1/plus/view\.php\?arcID=$2&pageno=$3 

关于列表分页伪静态后出现/plus/的,例如:www.phpfensi.com/plus/list-2-16-2.html,打开include/arc.listview.class.php 找到:

$plist = str_replace('.php?tid=', '-', $plist);

大约在第964行,在其前面面添加一行:

$plist = str_replace('plus/list', 'list', $plist);

这个是列表页分页rewrite的url格式的,plus和list的地方你改啥样都行.

Tags: DedeCMS静态 DedeCMS伪静态

分享到:

相关文章