thinkcmf的基于tp5行为扩展的静态缓存


作为一个cmf,怎么可以没有静态页面??

参考:

tp5的行为扩展:

https://www.kancloud.cn/manual/thinkphp5/118130

tp3.2的静态缓存:

http://document.thinkphp.cn/manual_3_2.html#html_cache


1.首先需要2个php文件

ReadHtmlCacheBehavior.php

WriteHtmlCacheBehavior.php


请自行在tp3.2里面复制或者百度下载


2.将这两个文件放入 simplewind\cmf\behavior

修改文件的namespace ,

namespace cmf\behavior;

3.添加配置到文件 app\config.php

// +----------------------------------------------------------------------
// | 静态缓存
// +----------------------------------------------------------------------
'html_cache_on'           => true, // 开启静态缓存
'html_cache_time'         => 7200, // 全局静态缓存有效期(秒)
'html_file_suffix'        => '.shtml', // 设置静态缓存文件后缀
'html_cache_compile_type' => 'file',//缓存存储驱动
'html_cache_rules'        => array(
    // 定义静态缓存规则
    // // 定义格式1 数组方式
    //'静态地址' => array('静态规则', '有效期', '附加规则'),
    //1.任意控制器的任意操作都适用
    '*'        => array('{$_SERVER.REQUEST_URI|md5}'),
    //2.任意控制器的md5操作
    'md5'      => array('{:module}/{:controller}/{:action}_{id|md5}'),
    //3.Static控制器的所有操作
    'Static:'  => array('{:module}/{:controller}/{:action}', 50),//第一个参数是构造的字符串,后面是缓存50秒
    //4.Hmtl控制器的md5操作
    'Html:md5' => array('{:module}/{:controller}/{:action}'),
),


4.注册绑定行为 app\tags.php,注意:在对应的位置添加就行了,大约分别在16和28行附近

// 应用初始化
'app_init'       => [
    'cmf\\behavior\\InitHookBehavior',
    'cmf\\behavior\\ReadHtmlCacheBehavior',//静态缓存
],

// 视图内容过滤
'view_filter'    => [
    'cmf\\behavior\\WriteHtmlCacheBehavior',//静态缓存
],


完成了,静态缓存文件位置 data\runtime


效果图如下,左边是静态缓存,右边是模板缓存

image.png


使用后台更新缓存可以更新


环境:

PHP Version 5.5.38


System Windows NT SU 6.2 build 9200 (Windows 8 Professional Edition) i586
Build Date Jul 20 2016 11:08:49
Compiler MSVC11 (Visual C++ 2012)
Architecture x86


打赏

评论

暂时关闭,稍后恢复~
文档请看10遍以上!有问题可加QQ群!
发表话题

源素材推荐

提问必知

0.话题发布后没及时显示,请联系官方QQ群管理;
1.话题支持代码,qq截屏直接粘贴,和QQ群一样;
2.问题描述清,比如服务器版本,程序版本;
3.能上代码,就不用文字;
4.把问题发到话题后再发QQ群;
5.如果感觉回复者解答的不错,可以发红包!
6.多帮助别人也是对自己的锻炼!
7.付费讨论中只有提问者和付费用户才可以查看回复

积分规则

1.评论积分+1;每天最多10次奖励
2.发布话题积分+1;每天最多5次奖励
3.垃圾评论积分-500;
4.黄色,暴力,违反我国法律评论直接封号


ThinkCMF 8.0.1发布啦!节日快乐! 立即体验!