新闻中心

自动定时删除ecshop网站缓存

作者 / 无忧主机 时间 2012-08-06 00:38:36

我们知道为了加快网站的访问速度,大部分开源程序使用缓存技术,可是有的时候如果我们没有更新缓存,很容易导致访问ecshop白屏。还如,在前台显示的用户登录后保存的session_id,每次都要清除了缓存才才会显示,当我们长时间没有删除或更新ecshop缓存都极有可能导致上述两种情况的发生。那么,怎样才能让网站自动更新缓存呢,无忧主机小编(www.51php.com)现在就教您设置ecshop让网站前台自动缓存。

自动更新删除ecsho站点缓存方法一:修改init.php文件

1、 登录php虚拟主机ftp,下载…/includes/init.php文件,s然后使用文本编辑器(如editplus)打开,添加一小段更新站点缓存的代码就可以了。代码如下:
// 自动更新缓存

if
 (is_temps())

{
 clear_all_files();
 $sql="UPDATE ".$ecs->table('shop_config') ."SET
 value=".time()." WHERE
 code='"."last_clear_time'";
 //注意ecs改成自己网站的数据库
 表前缀
 $db->query($sql);

}
 function is_temps()

{
 if(time()-$_CFG['last_clear_time']<3600)
 {
 return(false);
 }
 else
说明:last_clear_time后面的参数3600为自动更新间隔时间,单位为秒,你可以根据自己网站的实际情况自行修改。在init.php中加入上述代码的位置如下图表示:

自动更新删除ecsho站点缓存方法二:指向SQL查询语句

使用ecshop后台执行sql语句(进入 ECShop后台 —— 数据库管理——SQL查询) 输入下面SQL语句,提交,注意要把表前缀更改为你自己的。我这里使用的是默认表前缀ecs_。
INSERT INTO `ecs_shop_config` VALUES (1028, 10, 'last_clear_time',
 'text', '', '', '1332808200', 1);
SQL执行语句说明: 1332808200这个是数据库存储的时间戳,对应于2012-03-27 08:30:00,到后台更新下缓存,它会自动变更的。 1028这个值也是可以改的,但是不建议少于1000 如果少于1000,可能对其他值会产生影响。 Sql查询语句执行效果如下截图: 通过以上两种方法的设置,ecshop在日常运行中就会自动更新缓存了。不再需要您自己惦记,要定时登录后天手动清楚网站缓存了,统统交给程序自动完成。   纯Linux环境下高端免备案【香港独立IP地址】php空间,仅仅只需199元一年起。商务中国域名核心代理直销50元注册国际顶级域名          

本文地址:https://www.51php.com/ecshop/7113.html

1
1
1
1
1
1
1

客户服务热线

0791-8623-3537

在线客服