我在共享主机服务上有一个简单的网站,并且使用基本的PHP输出缓存(将HTML输出写入文件)。该站点的数据不会经常更改,但是只有那时我才进行更改,因此该站点没有更新界面,因为它不需要一个更新界面,因此我只需登录phpmyadmin界面并将修改作为SQL语句上传。
这很好用,唯一的问题是仅当缓存时间到期时,更改不会立即显示在站点上。有什么方法可以从mysql触发缓存失效,所以当我更改数据库中的数据时,将清除缓存。例如,我可以在更新中添加另外一条sql行,如果可能的话,它将在本地目录中调用外部程序,但这是吗?
如果不是,那么MYSQL可以通过某种巧妙的方式通知PHP端有关数据更新的信息,而无需PHP必须连接到数据库(如果存在页面的缓存版本,那么它将使用该版本并且不连接到数据库,因为这就是重点)。
最佳答案
MYSQL有什么聪明的方法可以通知PHP端有关数据更新的信息,而无需PHP连接到数据库
没有,您不应该想要这个。
您可以在站点上编写一个特殊的PHP脚本,该脚本将使缓存无效,并在每次更新数据库时手动调用它。或者,您可以将缓存存储在数据库中(而不是文件中)。
关于php - 如果MYSQL数据发生更改,是否有办法立即触发PHP文件系统缓存无效?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9360684/