当前位置:首页 » 文件管理 » ecshop不缓存

ecshop不缓存

发布时间: 2024-12-13 02:32:22

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

您好,针对这个问题,希望能帮到您:

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

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

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

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

1、关闭SMARTY的缓存:

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

if(file_put_contents($hash_dir.'/'.$cachename.'.php','<?phpexit;?>'.$data.$out,LOCK_EX)===false)
{
trigger_error('can'twrite:'.$hash_dir.'/'.$cachename.'.php');
}

将这一部分注释掉即可,改成

/*
if(file_put_contents($hash_dir.'/'.$cachename.'.php','<?phpexit;?>'.$data.$out,LOCK_EX)===false)
{
trigger_error('can'twrite:'.$hash_dir.'/'.$cachename.'.php');
}
*/


2、关闭SQL查询结果缓存

打开includes/cls_mysql.php

找到

var$max_cache_time=3600;//最大的缓存时间,以秒为单位

改成

var$max_cache_time=0;//最大的缓存时间,以秒为单位

经过上面修改后,就已经将ECSHOP的页面缓存和数据查询缓存都禁用了,这样当你做了任何修改后,前台都能马上体现出最新的变化,但是对服务器的压力会比禁用缓存之前稍微大那么一点。

希望能对您有所帮助,您也可以去ecshop模板堂的知识堂教程中查阅。

㈡ ecshop怎样不用后台更新缓存同样实现前台的刷新

1、首先修改数据库结构

进入 ECShop后台 ==》 数据库管理 ==》SQL查询
输入下面SQL语句,提交,注意要把表前缀更改为你自己的。我这里使用的是默认表前缀ecs_。

INSERT INTO `ecs_shop_config` VALUES (1021, 10, 'last_clear_time', 'text', '', '', '1332808200', 1);

注:1332808200这个是数据库存储的时间戳,对应于2012-03-27 08:30:00,到后台更新下缓存,它会自动变更的。
1021这个值也是可以改的,但是不建议少于1000 如果少于1000,可能对其他值会产生影响。
2、打开 includes/init.php 这个文件

在文件的最后添加如下代码:

// 自动更新缓存
if (is_temps())
{
clear_all_files();
$sql="UPDATE ".$ecs->table('shop_config') ."SET value=".time()." WHERE code='"."last_clear_time'";
$db->query($sql);
}

function is_temps()
{
if(time()-$_CFG['last_clear_time']<3600)
{
return(false);
}
else
{
return(true);
}
}

上面代码中的3600为自动更新间隔时间,单位为秒;
你可以根据自己网站的实际情况自行修改。

热点内容
php函数合并 发布:2025-10-19 07:00:33 浏览:926
算法循环 发布:2025-10-19 06:40:34 浏览:929
squid代理ftp 发布:2025-10-19 06:25:53 浏览:211
php定义全局变量 发布:2025-10-19 06:21:49 浏览:37
为什么要做配置中心 发布:2025-10-19 06:18:11 浏览:81
php异步上传图片 发布:2025-10-19 06:01:23 浏览:524
mysql数据库属性 发布:2025-10-19 05:39:10 浏览:818
python3发送邮件 发布:2025-10-19 05:37:42 浏览:149
怎么把安卓软件包做成链接 发布:2025-10-19 05:31:17 浏览:651
安卓系统怎么越来越大了 发布:2025-10-19 05:30:28 浏览:758