opcache 参数配置及解释:
参考 https://www.cnblogs.com/lamp01/p/8985068.html
opcache 原理及缓存哪些代码:
参考 https://www.awaimai.com/2684.html
opcache在php7.0之前需要单独安装,之后自带。
php.ini几个主要配置:
# 开启缓存,默认此行已经注释掉,默认为开启状态,0为关闭。 opcache.enable=1 # 检查文件是否更新,0为不检查,表示为一直不过期,即使更新代码也不变,除非重启服务或手动刷新。 opcache.validate_timestamps=1 # 缓存过期时间,单位秒 opcache.revalidate_freq=60
即:validate_timestamps=1时,则会在revalidate_freq=60秒后再去检查脚本是否变化,如有变化则更新缓存。
更多的配置参数查看上面链接。
ps:
opcache的相关配置参数状态可以通过phpinfo()函数获取。
测试效果,创建个1.php:
这里直接返回一个字符串。
<?php echo 'aaa';
然后用浏览器访问后返回aaa,再去修改php文件
<?php echo 'aaabbb';
浏览器刷新,依旧是显示aaa,表明opcache生效,60秒后访问才变为aaabbb。
之所以测试这个opcache功能是因为有群友问苹果cms后台添加内容后,前端页面不显示添加的内容。
需要过一段时间后才出现。查资料说是opcache导致的。
怀疑是此cms自己生成了前端缓存页面,比如xxx.php做为前端的缓存,不用每次生成,后台更新后,xxx.php虽然更新了,但是opcache缓存还没刷新导致。
原创文章,转载请注明。本文链接地址: https://www.rootop.org/pages/4633.html