In Drupal 8, it will be better if we can enable OPCache.

How to enable OPCache in my localhost ?

I am using xampp v3.2.1 & windows 7.

Thank you.


fabrizior’s picture

With XAMPP version xampp-win32-5.6.14-4-VC11 I've added, after the section [dba],


; Determines if Zend OPCache is enabled

; Determines if Zend OPCache is enabled for the CLI version of PHP

; The OPcache shared memory storage size.

; The amount of memory for interned strings in Mbytes.

; The maximum number of keys (scripts) in the OPcache hash table.
 Only numbers between 200 and 100000 are allowed.

; The maximum percentage of "wasted" memory until a restart is scheduled.

; 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.

; When disabled, you must reset the OPcache manually or restart the
; webserver for changes to the filesystem to take effect.

; 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)

; Enables or disables file search in include_path optimization

; If disabled, all PHPDoc comments are dropped from the code to reduce the
; size of the optimized code.

; 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.

; If enabled, a fast shutdown sequence is used for the accelerated code

; Allow file existence override (file_exists, etc.) performance feature.

; A bitmask, where each bit enables or disables the appropriate OPcache
; passes


; The location of the OPcache blacklist file (wildcards allowed).
; Each OPcache blacklist file is a text file that holds the names of files
; that should not be accelerated. The file format is to add each filename
; to a new line. The filename may be a full path or just a file prefix
; (i.e., /var/www/x  blacklists all the files and directories in /var/www
; that start with 'x'). Line starting with a ; are ignored (comments).

; Allows exclusion of large files from being cached. By default all files
; are cached.

; Check the cache checksum each N requests.
; The default value of "0" means that the checks are disabled.

; How long to wait (in seconds) for a scheduled restart to begin if the cache
; is not being accessed.

; OPcache error_log file name. Empty string assumes "stderr".

; All OPcache errors go to the Web server log.
; By default, only fatal errors (level 0) or errors (level 1) are logged.
; You can also enable warnings (level 2), info messages (level 3) or
; debug messages (level 4).

; Preferred Shared Memory back-end. Leave empty and let the system decide.

; Protect the shared memory from unexpected writing during script execution.
; Useful for internal debugging only.

Then I restarted Apache. Seems working fine.

Drupal 8's installation doesn't give me any warning.


brainites’s picture

@fabrizior You saved my day! Did use full path in the zend_extension section though. Didn't want to take chances since all zend_extension definitions I saw in php.ini used full path.

vijayrami’s picture

Great thanks...
I am installing Drupal at very first time.
And have same error.
And i apply this first solution.
And works fine for me...
“Every solution to every problem is simple. It's the distance between the two where the mystery lies.”

raghwendra’s picture

Correct information I save my time a lot!

pazhyn’s picture

For Mac OS X simply uncomment this row in php.ini (located in /Applications/XAMPP/xamppfiles/etc/):
And restart Apache.

JaiprakashGoplani’s picture

Thanks very much searching for this only.

mareckimx’s picture

kalidasan’s picture

// Add below line at php.ini file. This alone will fix this issue.
zend_extension = "C:\xampp\php\ext\php_opcache.dll"

More details :

If your XAMPP comes with PHP 5.5+ by default, opcache already included in the bundle, you will just need to enable it. To enable the extension:

  • Open php.ini (by default it should be located here: C:\xampp\php\php.ini).
  • Add this line at the end of the file: zend_extension = "C:\xampp\php\ext\php_opcache.dll"
  • Restart Apache server.

Reference link

greta_drupal’s picture

Be sure to add this zend_extension URL reference to the PHP.ini options [PHP] section. I added it at end of "Paths and Directories", just before "File Uploads" settings.

chichuno’s picture

And in ampps ? how i enable it ?

quocmaivan’s picture

How to fix maximum upload files?

jamadar’s picture

pipicom’s picture

Works for me! Thank you.

Hemangi Gokhale’s picture

It worked!!

srinivasim’s picture

Thank you. I am going learn Drupal development so i am searching for more information to save time and knowledge.

ruchirapingale’s picture


1) Add this line zend_extension = "C:\xampp\php\ext\php_opcache.dll".
2) Remove ";" from stating of following lines
opcache.enable=1 (Determines if Zend OPCache is enabled for the CLI version of PHP)

opcache.memory_consumption=64 (The OPcache shared memory storage size)

opcache.max_wasted_percentage=5 (The maximum percentage of "wasted" memory until a restart is scheduled)

opcache.use_cwd=1 (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))

opcache.max_wasted_percentage=5(The maximum percentage of "wasted" memory until a restart is scheduled.)


Bosire’s picture

Worked perfectly on D8.

ramesh_singh’s picture

XAMPP comes with PHP OPCache already included in the bundle, you just need to enable it. To enable the extension:
1.Open the file with Notepad++: c:\xampp\php\php.ini
2.Add this line near the extention section: zend_extension=php_opcache.dll
3.Stop/Start Apache

SkyRunner’s picture

Can anyone help me out to setup AMPPS using OPcache?