安装

OPcache 只能作为共享扩展编译。如果您已使用 --disable-all 禁用默认扩展的构建,则必须使用 --enable-opcache 选项编译 PHP,才能使用 OPcache。

编译完成后,可以使用 zend_extension 配置指令将 OPcache 扩展加载到 PHP 中。这可以通过在非 Windows 平台上使用 zend_extension=/full/path/to/opcache.so,在 Windows 平台上使用 zend_extension=C:\path\to\php_opcache.dll 来完成。

注意:

如果您想将 OPcache 与 » Xdebug 一起使用,则必须在 Xdebug 之前加载 OPcache。

推荐的 php.ini 设置

以下设置通常推荐为提供良好的性能

opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1 ; prior to PHP 7.2.0
opcache.enable_cli=1

您可能还想考虑禁用 opcache.save_comments 并启用 opcache.enable_file_override,但请注意,您需要在生产环境中使用这些设置之前测试您的代码,因为已知它们会破坏某些框架和应用程序,特别是在使用文档注释的情况下。

在 Windows 上,应启用 opcache.file_cache_fallback,并将 opcache.file_cache 设置为已存在且可写入的目录。

OPcache 支持的完整配置指令列表 也可用

添加说明

用户贡献说明 2 条说明

NoiseEee
10 年前
虽然 php.ini 中的“建议”opcache 设置可能适合生产服务器,但您在开发时需要更改几个设置,否则您将看不到代码的任何更改。在盲目将这些设置粘贴到 php.ini 并假设一切都能正常工作之前,请熟悉它们的含义。
stchr
3 年前
请注意,opcache.fast_shutdown 已在 PHP 7.2 中移除。
To Top