7

我正在尝试启用 Opcache,但由于某种原因,在编辑我的 php.ini 文件并重新启动 apache(甚至重新启动服务器)后,它仍然没有启用。运行测试我可以看到 php 文件的位置:

Loaded Configuration File   /etc/php5/apache2/php.ini

在该文件中,我添加了:

zend_extension=/usr/lib/php5/20121212/opcache.so
opcache.enable=1
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

zend 扩展的位置由 locate opcache.so 定义。这没有用。然后我注意到 php 正在加载一个附加文件 /etc/php5/apache2/conf.d/05-opcache.ini。在该文件中,它看起来像:

; configuration for php ZendOpcache module
; priority=05
zend_extension=opcache.so
opcache.enable=1
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

但是,重新启动 apache 后它仍然无法启用。以下是我的 phpinfo() 输出:

Opcode Caching  Disabled

我怎样才能让它启用?

4

5 回答 5

3

在 的输出中phpinfo(),查看.ini下面列出的文件:

解析的其他 .ini 文件

可能有类似的东西

/usr/local/php5/php.d/20-extension-opcache.ini

确保opcache.enable=1在此文件中设置。

于 2017-10-17T15:33:22.170 回答
2

如果一切都失败了,你可以尝试:

sudo yum install php-opcache

解决了我的 Fedora PHP 7.2 版本的问题。

原来我没有安装 opcache(一个关键的问题是 phpinfo() 的“已解析的附加 .ini 文件”部分缺少 .ini 文件)。

于 2019-09-30T23:13:11.627 回答
0

检查 php.ini 中的 [opcache] 部分

[opcache]
; Determines if Zend OPCache is enabled
opcache.enable=0
于 2014-10-21T10:40:21.580 回答
0

您可能正在寻找 ini 文件位置

cat /etc/php.d/10-opcache.ini
于 2017-08-16T12:57:21.113 回答
-1

首先这样做

sudo apt-get install libpcre3-dev

然后

sudo pecl install zendopcache-beta
于 2014-12-19T17:37:30.467 回答