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

落爺英雄遲暮 提交于 2019-12-01 19:22:36


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


各有利弊,自己取舍吧。


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!