Version: Edit on GitHub

Fix Performance Issues with XAMPP on Windows

By default XAMPP comes installed with Mod-PHP. Mod-PHP is usually the way-to-go to execute PHP within the Apache process, which is handling the request. The problem is the poor performance of Mod-PHP in XAMPP especially on Windows.

If you are experiencing poor performance of the Pimcore/Symfony stack, try switching out Mod-PHP with FastCGI in your XAMPP installation.

Download FastCGI Module for Apache

You can download the latest version of the FastCGI Module for Apache at Depending on your XAMPP installation download either the 32 Bit or the 64 Bit version.

Install the FastCGI Module

Assuming your XAMPP installation is located under C:\xampp, copy the file from the ZIP to C:\xampp\apache\modules.

Enable FastCGI

In order to enable FastCGI for your XAMPP installation you have to edit the configuration file C:\xampp\apache\conf\extra\httpd-xampp.conf. In the PHP-Module setup section comment out the following lines. (Example below is running Apache 2.4 with PHP 7.1)

# PHP-Module setup
LoadFile "C:/xampp/php/php7ts.dll"
LoadFile "C:/xampp/php/libpq.dll"
# comment out the following lines
#LoadModule php7_module "C:/xampp/php/php7apache2_4.dll"
#<FilesMatch "\.php$">
#    SetHandler application/x-httpd-php
#<FilesMatch "\.phps$">
#    SetHandler application/x-httpd-php-source

Add these lines to enable FastCGI.

FcgidInitialEnv PHPRC "C:/xampp/php"
AddHandler fcgid-script .php
FcgidWrapper "C:/xampp/php/php-cgi.exe" .php

After enabling FastCGI phpmyadmin will throw a forbidden exception when navigating to localhost/phpmyadmin. To fix this error add the ExecCGI option in the httpd-xampp.conf to the phpmyadmin directory further below.

Alias /phpmyadmin "C:/xampp/phpMyAdmin/"
<Directory "C:/xampp/phpMyAdmin">
    # add this option to fix the error
    Options ExecCGI
    AllowOverride AuthConfig
    Require local
    ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var