2014-03-31 25 views
16

我想在我的服务器上启用opCache(ubuntu 12.04 LTS,运行apache 2.4.7并使用PHP Version 5.5.10-1+deb.sury.org~precise+1)。是我的OpCache运行?

在开始做任何事情之前,我读了this highly relevant post,它告诉我opCache默认是禁用的,我必须手动启用它。

我去了php.ini,发现opcache.so没有文字,与opcache有关的所有东西都被注释掉了。像这样:

[opcache] 
; Determines if Zend OPCache is enabled 
;opcache.enable=0 

; Determines if Zend OPCache is enabled for the CLI version of PHP 
;opcache.enable_cli=0 

这是可以的,因为这个人告诉它被禁用。但是,当我咨询phpinfo();它向我显示以下(并根据我的理解,它告诉我,opCache已被使用)。

enter image description here

所以启用我的opcache和使用,我怎么能看到/验证?

+0

你在运行'phpinfo()'之前重新启动服务器吗?' – Victory

+0

@Victory我刚刚重新启动它,结果是一样的。 (缓存命中3,缓存命中2中的数字除外)。还可以使用/释放内存缓存脚本/键。这实际上让我更接近于相信它已经在运行。 –

+0

我有同样的问题,但我的价值观不动.. http://i.imgur.com/JwEaGwu.png任何建议? – Revious

回答

22

对你的phpinfo()有信心,你已经拥有了必要的共享模块或者它不会显示出来。

此外,您的opcache确实启用,但仅限web,而不是cli。该库的默认设置为对网络进行,因此启用,以禁用取消注释开头的行这样的分号:

opcache.enable=0 

如前所述,命令行PHP中使用,默认是禁用,启用它,取消注释并设置为1

opcache.enable_cli=1 

这里是所有运行参数列表,并为进一步的参考有默认值:http://www.php.net/manual/en/opcache.configuration.php

如果你想为它提供有趣的网页监控页面(如apc.php d oes for apc)试试这个: https://github.com/rlerdorf/opcache-status

+0

很酷,谢谢。显然我不得不信任phpinfo而不是高度赞成的答案。感谢您的确认。 –

+1

@SalvadorDali您提到的另一篇文章是关于扩展的共享库是否存在并加载。我认为这很明显,共享模块可能没有被设置为默认加载php 5.5 build,但这并不意味着它被“禁用”,它甚至没有加载。很明显,您的设置具有启用模块的共享库。一旦模块启用,您就可以使用配置设置来打开和关闭特定功能,并启用/禁用特定功能。 – Ray

+0

由于某种原因,我认为这个答案将在接下来的几年里有很大的打击:) –

相关问题