我们知道为了加快网站的访问速度,大部分开源程序使用缓存技术,可是有的时候如果我们没有更新缓存,很容易导致访问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中加入上述代码的位置如下图表示:

image0014 150x150 自动定时删除ecshop网站缓存

自动更新删除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查询语句执行效果如下截图:

image0032 150x150 自动定时删除ecshop网站缓存

通过以上两种方法的设置,ecshop在日常运行中就会自动更新缓存了。不再需要您自己惦记,要定时登录后天手动清楚网站缓存了,统统交给程序自动完成。

 

纯Linux环境下高端免备案【香港独立IP地址】php空间,仅仅只需199元一年起。商务中国域名核心代理直销50元注册国际顶级域名

 

 

 

 

 

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

喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^

阅读本文的人还阅读: