我尝试在wamp上启用opcache,但它不起作用.我改变了这样的设置:
[opcache] zend_extension=C:/wamp/bin/PHP/PHP5.5.12/ext/PHP_opcache.dll opcache.enable=1 opcache.enable_cli=1 opcache.memory_consumption=128 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=4000
在opcache的PHP扩展中,我总是有红色的感叹号
怎么了?一些帮助
而且在PHPinfo()
Zend OPcache Opcode Caching Up and Running Optimization Enabled Startup OK Shared memory model win32 Cache hits 0 Cache misses 1 Used memory 483608 Free memory 133734120 Wasted memory 0 Cached scripts 1 Cached keys 2 Max keys 7963 OOM restarts 0 Hash keys restarts 0 Manual restarts 0 opcache.blacklist_filename no value no value opcache.consistency_checks 0 0 opcache.dups_fix Off Off opcache.enable On On opcache.enable_cli Off Off opcache.enable_file_override Off Off opcache.error_log no value no value opcache.fast_shutdown 1 1 opcache.file_update_protection 2 2 opcache.force_restart_timeout 180 180 opcache.inherited_hack On On opcache.interned_strings_buffer 8 8 opcache.load_comments 1 1 opcache.log_verbosity_level 1 1 opcache.max_accelerated_files 4000 4000 opcache.max_file_size 0 0 opcache.max_wasted_percentage 5 5 opcache.memory_consumption 128 128 opcache.mmap_base no value no value opcache.optimization_level 0xFFFFFFFF 0xFFFFFFFF opcache.preferred_memory_model no value no value opcache.protect_memory 0 0 opcache.restrict_api no value no value opcache.revalidate_freq 60 60 opcache.revalidate_path Off Off opcache.save_comments 1 1 opcache.use_cwd On On opcache.validate_timestamps On On
我发现这个如果你想知道它是否有效:https://github.com/rlerdorf/opcache-status/blob/master/opcache.php
在PHP5.5.12中,opcache作为一个zend扩展名传递,但是在标准ext文件夹中可以看到.
因此,您将像任何其他PHP扩展名一样加载它,除了使用zend_extension而不是扩展参数,所以使用wampmanager菜单编辑您的PHP.ini文件,以确保您编辑正确的文件,如下所示:
wampmanager -> PHP -> PHP.ini
首先检查此参数设置是否正确:
extension_dir = "C:/wamp/bin/PHP/PHP5.5.12/ext/"
现在你在你的例子中加载了OpCache dll,就像这样做,它将从默认的扩展文件夹中加载,就像一个普通的扩展名=将是:
zend_extension=PHP_opcache.dll
你可以这样做:
zend_extension="C:/wamp/bin/PHP/PHP5.5.12/ext/PHP_opcache.dll"
但是从标准ext文件夹加载完整路径不需要指定.
警告
如果您仍在开发中,您几乎绝对不会这样做,因为它不会增加任何好处,并且可能会添加时间到标准编译,每次代码更改后重新加载,并且可能不会重新编译和使用缓存的代码你不想要它.