您的位置:首页 > 运维架构

如何禁用ECSHOP缓存,如何关闭ECSHOP缓存

2012-06-15 10:36 288 查看
熟悉ECSHOP的老站长们都知道,ECSHOP是有缓存机制的。

ECSHOP的缓存机制从一定程度上可以减少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', '<?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的页面缓存和数据查询缓存都禁用了,这样当你做了任何修改后,前台都能马上体现出最新的变化,但是对服务器的压力会比禁用缓存之前稍微大那么一点。

各有利弊,自己取舍吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: