Ajouter extension php zend opcache dans wamp
Besoin de Zend OPcache
En voulant tester la RC1 de Drupal 8 en local, je me suis retrouvé confronté à une sorte de vérificateur de config qui me dit qu'il me faudrait l'extension op_cache pour faire tourner le machin. Alors voila comment on fait pour rajouter ca dans wamp, sous windows donc...
Config du php.ini
Pour faire court, Il faut chercher la section [opcache] dans le fichier de configuration php.ini (le php.ini à modifier est celui qui se trouve coté apache). Si cette section n'existe pas il faut la créer. Juste avant vous devez rajouter l'inclusion du DLL avec cette ligne :
zend_extension=php_opcache.dll
Ensuite copiez ce qui suit dans la section [opcache] :
; Determines if Zend OPCache is enabled
opcache.enable=1
; Determines if Zend OPCache is enabled for the CLI version of PHP
opcache.enable_cli=0
; The OPcache shared memory storage size.
opcache.memory_consumption=64
; The amount of memory for interned strings in Mbytes.
opcache.interned_strings_buffer=4
; The maximum number of keys (scripts) in the OPcache hash table.
; Only numbers between 200 and 100000 are allowed.
opcache.max_accelerated_files=2000
; The maximum percentage of "wasted" memory until a restart is scheduled.
opcache.max_wasted_percentage=5
; When this directive is enabled, the OPcache appends the current working
; directory to the script key, thus eliminating possible collisions between
; files with the same name (basename). Disabling the directive improves
; performance, but may break existing applications.
opcache.use_cwd=1
; When disabled, you must reset the OPcache manually or restart the
; webserver for changes to the filesystem to take effect.
opcache.validate_timestamps=1
; How often (in seconds) to check file timestamps for changes to the shared
; memory storage allocation. ("1" means validate once per second, but only
; once per request. "0" means always validate)
opcache.revalidate_freq=2
; Enables or disables file search in include_path optimization
opcache.revalidate_path=0
; If disabled, all PHPDoc comments are dropped from the code to reduce the
; size of the optimized code.
opcache.save_comments=0
; If disabled, PHPDoc comments are not loaded from SHM, so "Doc Comments"
; may be always stored (save_comments=1), but not loaded by applications
; that don't need them anyway.
opcache.load_comments=0
; If enabled, a fast shutdown sequence is used for the accelerated code
opcache.fast_shutdown=1
; Allow file existence override (file_exists, etc.) performance feature.
opcache.enable_file_override=0
; A bitmask, where each bit enables or disables the appropriate OPcache
; passes
opcache.optimization_level=0xffffffff
Voila, après un redémarrage des services de wamp. J'ouvre un phpinfo() et je constate l'apparition merveilleuse de Zend OPcache. Opération terminée :)
Et pour info, j'ai été confronté à cette erreur :
Doctrine\Common\Annotations\AnnotationException: [Semantical Error] The class "Drupal\Core\Render\Annotation\FormElement" is not annotated with @Annotation. Are you sure this class can be used as annotation? If so, then you need to add @Annotation to the class doc comment of "Drupal\Core\Render\Annotation\FormElement". If it is indeed no annotation, then you need to add @IgnoreAnnotation("FormElement") to the class doc comment of class Drupal\Core\Datetime\Element\Datelist. in Doctrine\Common\Annotations\AnnotationException::semanticalError()
Qui se répare simplement en passant deux valeurs de config opcache à 1 (enabled) comme ceci :
opcache.save_comments=1 opcache.load_comments=1
(J'ai galéré pour trouver ^^)
Retour a la liste