今天遇到一个坑爹的问题,就是我修改了PHP代码,提交到网站根目录以后,刷新浏览器居然无法立即生效,差不多得一分钟的样子再去刷新,才会看到更改后的效果。
出现这个问题的原因,是因为手头的项目需要较高的PHP版本,所以对PHP的版本进行了切换,然后就出现了问题。
最开始还以为是apache的问题,所以各种百度这方面的关键词,可是一无所获,心中着实郁闷。后来放弃了apache的关键词,依然找不到解决方案 。
憋得难受了,无奈之下,连上VPN,找谷大哥帮忙,搜索的关键词为:PHP代码修改无法立即生效。
请原谅,我着实是因为太沮丧了,所以随意把自己的目的用句子表达了出来。
可是没有想到的是,谷大哥居然明白了Hy369的意思,直接在搜索头条放了个[原]PHP修改后无法立即生效的信息。我眼前一亮,点开链接,看到介绍的内容更是激动难耐,我去,好像有戏啊。
该文中提到造成这个问题的原因是因为php配置造成的,我一时间恍然大悟,原来是这样。同时心中也暗骂自己二逼了,明明只是动了PHP,为什么要去从apache上找答案呢,这不是明显的找虐嘛(apache:怪我咯)。
按照文中的指引,我果然把问题解决了。哈哈。现在贴上解决方案,并于文后附上原文地址。
这里指的是没有使用任何框架的情况下,发生的问题!
修改PHP代码,不能立即生效,重启php-fpm服务后会生效!
折腾好久,各种搜索,各种大神群里面问!都无解!
最后在http://www.oschina.net/question/88981_165060找到了答案!
看PHP配置文件
[Zend Opcache]
zend_extension=opcache.so
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1
;opcache end
;xcache
;xcache end
修改下面的代码即可解决问题:
opcache.revalidate_freq=1
虽然这个解决方案也是从别处而来,不过我还是得附上我看到的文章地址,哈哈,算是表示感谢吧。
非特殊注明博文为 爱PHP吧(www.iphp8.com)原创内容,转载请注明原文地址:http://www.iphp8.com/?post=59