A-A+
ecshop关闭禁用缓存
ecshop 的缓存机制主要是为了加快网页的加载速度以及减轻服务器的负担,但是这样一来,给新手用户造成一个新的困扰,就是当我们在调试前台页面的时候,因为缓存起到的作用,不能及时的将修改之后的内容显示出来,像这种 ecshop 的缓存机制其实在大多数成熟 cms 中都存在的,但什么时候使用呢,如果我们不需要再调整页面结构的时候可以进行开启,但如果页面内容要经常去调整的话,就可以将其关闭掉,以免造成前台页面不能及时更新的困扰,下面夏日博客就来说下如何彻底将 ecshop 的缓存关闭掉。
ecshop 当中分为两种缓存,一种是 smarty 的页面缓存,另一种是 sql 查询结果的缓存,这两种缓存都是保存在 templates/caches/文件夹下面,我们只要把这两种缓存分别关闭,就可以彻底关闭掉 ecshop 的缓存机制。
1、关闭SMARTY的缓存:
打开includes/cls_template.php,找到下面一段代码:
- if (file_put_contents($hash_dir . '/' . $cachename . '.php', '<?php exit;?>' . $data . $out, LOCK_EX) === false)
- {
- trigger_error('can\'t write:' . $hash_dir . '/' . $cachename . '.php');
- }
将这一部分注释掉即可,改成如下代码:
- /*
- if (file_put_contents($hash_dir . '/' . $cachename . '.php', '<?php exit;?>' . $data . $out, LOCK_EX) === false)
- {
- trigger_error('can\'t write:' . $hash_dir . '/' . $cachename . '.php');
- }
- */
2、关闭SQL查询结果缓存
打开includes/cls_mysql.php 找到如下代码:
- var $max_cache_time=3600;//最大的缓存时间,以秒为单位
- //改为如下代码
- var $max_cache_time=0;//最大的缓存时间,以秒为单位
经过上面修改后,就已经将ECSHOP的页面缓存和数据查询缓存都禁用了,这样当你做了任何修改后,前台都能马上体现出最新的变化,但是对服务器的压力会比禁用缓存之前稍微大那么一点。