织梦5.7 如何实现伪静态实战

织梦伪静态与静态生成的区别:

(1) 伪静态其实还是动态页面,只是结尾后缀名变成了.html,看起来更像静态页面,搜索引擎更加喜欢而已。

(2) 伪静态的文件修改,不用更新全部页面,特别是修改某个文件,不用整站都生成,比如修改广告位,不用花时间去更新,所改即可马上看到。

(3) 伪静态在后期文件较大、较多的情况下,便于网站的维护。

(4) 伪静态的维护比纯静态简单,但是占用cpu的频率来说,我们都知道,纯静态的页面比动态、伪静态的页面占用cpu少。

 

下面以Apache服务器为例:

第一步,新建.htaccess文件,加入如下规则:

1 #提供部分规则作参考
2 
3 RewriteRule ^category/list-([0-9]+)\.html$ /plus/list.php?tid=$1
4 RewriteRule ^category/list-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /plus/list.php?tid=$1&totalresult=$2&PageNo=$3
5 RewriteRule ^archives/view-([0-9]+)-([0-9]+)\.html$ /plus/view.php?arcID=$1&pageno=$2

 

第二步.织梦后台设置

1、登录织梦的后台,到“后台-系统参数-核心设置-是否使用伪静态”中选择“是”,表示我们在后台开启了伪静态;

2、创建栏目或批量增加栏目时,栏目列表选项:选择“动态页”;

3、添加新文章时,发布选项:选择“仅动态浏览 ”。

4、如果你的网站已经存在生成的静态栏目或文章HTML,那么需要关闭生成静态的页面,在后台-系统-SQL命令行工具中执行如下语句:

update 前缀_archives set ismake=-1;
update 前缀_arctype set isdefault=-1;

(这两个命令让静态的页面变成动态的页面,让静态的栏目变成动态的栏目,是伪静态关键的两个步骤)

 

第三步:其他手动设置

1、 把站点根目录下index.html删除,以后不更新主页HTML即可,当然你也可以选择不使用动态首页。

2、打开 /include/helpers/channelunit.helper.php

将GetFileName()中的如下代码:

if($cfg_rewrite == 'Y')  {

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

}

替换为

if($cfg_rewrite == 'Y')   {

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

}

3、将GetTypeUrl()中的如下代码:

$reurl = $GLOBALS['cfg_phpurl']."/list.php?tid=".$typeid;
替换为
/$reurl = "/category/list-".$typeid.".html";

这步必须修改,即让你的频道或是列表页URL变更为/category/list-1.html形式。

4、DedeCms列表分页伪静态

打开/include/arc.listview.class.php,找到获取动态的分页列表GetPageListDM()函数末尾处

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

替换为

$plist = str_replace('plus', 'category', $plist);
//将默认的plus替换成category

$plist = str_replace('.php?tid=', '-', $plist);  将列表分页默认链接格式  /plus/list-1-2-1.html  修改为  /category/list-1-2-1.html,这步也可以不作更改。

  

posted @ 2020-07-21 17:19  心无引擎,眼无流派  阅读(446)  评论(0编辑  收藏  举报