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

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

发布:smiling 来源: PHP粉丝网  添加日期:2015-11-11 10:47:47 浏览: 评论: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.XXXX.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即动态。

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

  1. update dede_arctype set isdefault=-1 
  2. ----------------------------我是分割线------------------------------------ 
  3. WIN下 伪静态规则: 
  4. HTTP.INI 
  5. [ISAPI_Rewrite] 
  6. # 缓存3600秒 = 1 小时(hour) 
  7. CacheClockRate 3600 
  8. RepeatLimit 32 
  9. RewriteRule ^(.*)/index\.html $1/index\.html 
  10. RewriteRule ^(.*)/list-([0-9]+)\.html $1/plus/list\.php\?tid=$2 
  11. RewriteRule ^(.*)/list-([0-9]+)-([0-9]+)-([0-9]+)\.html $1/plus/list\.php\?tid=$2&TotalResult=$3&PageNo=$4 
  12. RewriteRule ^(.*)/view-([0-9]+)-([0-9]+)\.html $1/plus/view\.php\?arcID=$2&pageno=$3 --phpfensi.com 

----------------------------我是分割线------------------------------------

关于列表分页伪静态后,出现/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列表

分享到: