当启用OpCache时,我发现运行Joomla网站时出现了一些奇怪的现象。
所有网站都有单独的fpm池,并且有open_base_dir限制。
让我们假设两个网:
/var/www/web1
/var/www/web2
首先在浏览器中加载web1,工作正常。
然后我尝试打开web2并抛出open_base_dir限制错误,file_exist()无法检查/ var / www / web1 / .... php
web2想要从web1打开一个文件。
错误的作用相反,我重启php-fpm,首先打开web2,然后是web1,现在web1想要打开一个/ var / www / web2文件。
仅当有两个具有相同版本的Joomlas并且启用了Opcache时才会发生这种情况。
不知何故,opcache记得脚本已经打开并缓存,并尝试从另一个池的目录中加载它。
我有php-fpm - 5.6.7 + dfsg-1版本。
我现在已经关闭了opcache,但是我配置了错误,还是那种正常行为?