自从使用了nginx环境之后,使用phpstudy在本地调试代码发现时常不立即生效,F5刷新也无效,着急生效的话只能重启nginx环境才会立即生效。这样倒也可以,但是觉得多了一步,麻烦,影响效率,今天就想彻底解决一下这个问题,解决方案如下:
一,先排查程序缓存,确定不是程序框架开启缓存设置的问题。
二,再排查服务器是否启用CDN加速,CDN加速缓存可能会导致部分更新不及时。
三,最后确定PHP是否开启了Opcode缓存。
用phpinfo()函数,查看PHP开启模块中是否包含ZendOpcache这类opcode缓存。
如果有,那么打开php.ini查找下 “opcache”,将
opcache.revalidate_freq=60
修改为:
opcache.revalidate_freq=0
如下图所示:
opcache.revalidate_freq 为 缓存过期时间配置,设置60秒后表示脚本60秒后才会去更新改动,改为0则每次修改都能及时生效,或者修改成其它的时间。
如果以上修改还不生效,查看php.ini修改位置是否正确