【发布时间】:2014-09-08 02:59:23
【问题描述】:
我在 opcache.ini 中设置了 opcache.enable=0
现在我想使用我的 htaccess 文件启用 opcache
php_flag opcache.enable 开启
但它不起作用
有什么办法,我在 opcache.ini 中禁用 opcache,并在我的应用程序的 htacces 文件中启用。
谢谢
【问题讨论】:
标签: opcache
我在 opcache.ini 中设置了 opcache.enable=0
现在我想使用我的 htaccess 文件启用 opcache
php_flag opcache.enable 开启
但它不起作用
有什么办法,我在 opcache.ini 中禁用 opcache,并在我的应用程序的 htacces 文件中启用。
谢谢
【问题讨论】:
标签: opcache
这里简单的回答是你不能启用。 OPcache 是一个 zend_extension,因此只能在系统级别启用。然而,在 opcache.enable 中有一个简单的问题是 PHP_INI_ALL 指令,可以在目录或程序上下文的任何位置设置为 0。所以在系统配置中有opcache.enable=1然后设置
php_flag opcache.enable Off
应该可以,这将禁用该请求范围内的缓存
还阅读了指令opcache.blacklist_filename(这有点用词不当,顺便说一句)。这允许您定义不要缓存的文件和文件层次结构(但一旦被列入黑名单,您就不能在运行时创建例外或取消黑名单文件。
此外,由于启用是一个 PHP_INI_ALL 指令,因此没有什么能阻止您在 auto_prepend_file 包含的脚本中为该请求的范围添加一些代码逻辑禁用缓存,而不是使用 htaccess php_flag 指令,但并不是说一旦禁用就无法重新启用,因此只能使用黑名单来控制文件级别的缓存。
【讨论】: