Hero Image

Apache + PHP-FPM on Debian 12

Apache + PHP-FPM on Debian 12

Step 1 – Install PHP-FPM and enable Apache proxy modules

a2enmod proxy_fcgi setenvif
a2enconf php8.2-fpm
systemctl reload apache2

Step 2 – Add PHP-FPM handler to virtual host

<VirtualHost *:80>
    ServerName example.com
    DocumentRoot /var/www/example.com/html

    <FilesMatch \.php$>
        SetHandler "proxy:unix:/run/php/php8.2-fpm.sock|fcgi://localhost/"
    </FilesMatch>

    <Directory /var/www/example.com/html>
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

Step 3 – Test

echo '<?php phpinfo(); ?>' > /var/www/example.com/html/info.php
curl http://localhost/info.php | grep 'PHP Version'
rm /var/www/example.com/html/info.php