从 htacces 而非 .ini 文件启用 opcache

0 opcache

我在 opcache.ini 中设置了 opcache.enable=0

现在我想使用我的 htaccess 文件启用 opcache

php_flag opcache.enable 开启

但它不起作用

有什么办法,我在opcache.ini 中禁用opcache,并在我的应用程序的htacces 文件中启用。

谢谢

Ter*_*ryE 5

这里的简单答复是您无法启用. OPcache 是一个 zend_extension,因此只能在系统级别启用。但是,opcache.enable 中有一个简单的问题,它是一个PHP_INI_ALL指令,可以在目录或程序上下文中的任何位置设置为 0。所以opcache.enable=1在系统配置然后设置

php_flag opcache.enable Off 
Run Code Online (Sandbox Code Playgroud)

应该可以工作,这将禁用该请求范围的缓存

还阅读了指令opcache.blacklist_filename(这有点用词不当,顺便说一句)。这允许您定义缓存的文件和文件层次结构(但一旦被列入黑名单,您就不能在运行时创建例外或取消黑名单文件。

此外,由于 enable 是一个PHP_INI_ALL指令,因此没有什么能阻止您在auto_prepend_file包含的脚本中为该请求的范围添加一些代码逻辑禁用缓存,而不是使用 htaccessphp_flag指令,但一旦禁用,您就不能重新启用它,因此您只能使用黑名单来控制文件级别的缓存。