正在加载中...

如何关闭或禁用ECSHOP模板缓存和数据库查询缓存?

如何关闭或禁用ECSHOP模板缓存和数据库查询缓存?

著名的php开源网店商城系统ECSHOP默认启用cache缓存机制,将网页模板和数据库查询指令缓存到磁盘指定目录,在缓存时间内,程序直接从缓存目录调用,避免多次渲染模板或频繁查询数据库,从一定程度上可以减少ECSHOP反复读取数据库的几率,从而一定程度上降低服务器负担,提高访问速度。

但是启用缓存机制,对一些新手站长也有不利的地方。我就遇到很多新手站长经常问,我明明修改了什么什么,为什么前台就没变化呢,这就是缓存在作怪,一般到后台清除缓存就可以了。

鉴于上述原因,有一些站长就在想能不能“禁用ECSHOP缓存,关闭ECSHOP缓存”呢?答案是肯定的。

下面就来讲一讲“如何禁用ECSHOP缓存,如何关闭ECSHOP缓存?”

ECSHOP的缓存分两种,一种是SMARTY的页面缓存;另一种是SQL查询结果的缓存。

这两种缓存都是保存在templates/caches/文件夹下。

只要我们分别关闭这两个缓存,就可以完全禁用ECSHOP的缓存。

当然你也可以根据自己的需要关闭其中某一个。

1、关闭SMARTY的缓存:

打开includes/cls_template.php,找到下面一段

if (file_put_contents($hash_dir . '/' . $cachename . '.php', '' . $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的页面缓存和数据查询缓存都禁用了,这样当你做了任何修改后,前台都能马上体现出最新的变化,但是对服务器的压力会比禁用缓存之前稍微大那么一点。



返回上一页