虽然 php.ini 中的“建议”opcache 设置可能适合生产服务器,但您在开发时需要更改几个设置,否则您将看不到代码的任何更改。在盲目将这些设置粘贴到 php.ini 并假设一切都能正常工作之前,请熟悉它们的含义。
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。
以下设置通常推荐为提供良好的性能
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 支持的完整配置指令列表 也可用。