有一个网站静态化缓存的想法,大家来讨论一下.
我没有去学习过那些缓存什么的。自己总是感觉有点臃肿。
我希望就是用最简单的明白的一些语句,去实现自己想要的东西。
我还是个PHP初级的,所以大家讨论讨论便可。
我是想这样设计,在数据库中有一个表 web_page 字段简单
ID Web_Url Web_Key Web_UpDate
用户随便访问网站的某个页面,获取URL到数据库中判断,
如果不存在,侧把 页面及传递参数,生成一个KEY及时间写入数据库
同时生成一个以Web_Key 为名称的文件到 /temp/中
下次如果再访问该页面,判断时间是否大于设定的 30分钟,
如果小于,则直接调用 web_key 文件,如果大于,则再生成一次,更新时间。
这样子就可以实现整个站都缓存在 /temp/中,有效期是设定的30分钟或者更久,因为如果没有人访问,就不去更新了。
大伙说说这样的想法如何? 这就是我的入门级的想法。大家讨论一下,天马行空。。。哈哈。。
------解决思路----------------------
你介绍的实现也可以
介绍这边的一个实现方式:页面地址的url的md5值作为文件名字 前2位字符为文件名字 然后用file_exists判断
------解决思路----------------------
非常可惜,你的思路正是那感觉有点臃肿的缓存机制所使用的
只不过人家在实现时并不需要:
获取URL到数据库中判断,如果不存在,则把 页面及传递参数,生成一个KEY及时间写入数据库
而是从 url 中替换掉不能出现在文件名中的字符,得到缓存文件名
检查该文件是否存在,如果不存在或文件修改时间早于约定的时间,才重新产生缓存文件