Table of Contents
Was this article helpful?

1  out of  1 found this helpful

Try Vultr Today with

$50 Free on Us!

Want to contribute?

You could earn up to $600 by adding new articles!

Use PHP5-FPM with Apache 2 on Ubuntu 14.04

Last Updated: Sat, Nov 22, 2014
PHP Ubuntu Web Servers
Archived content

This article is outdated and may not work correctly for current operating systems or software.


Apache is popular web server software that is used by most web hosting providers. PHP5-FPM is a FastCGI implementation for PHP. It is useful for processing PHP scripts on busy websites.


Normally, Apache uses mod_php to process PHP pages on your VPS. Mod_php consumes more resources than PHP5-FPM. Since Apache is also compatible with PHP5-FPM, we can use that option to reduce the resource usage and improve performance.


Step 1

Install and activate apache2-mpm-event by running the following commands:

sudo apt-get update
sudo apt-get install apache2-mpm-event

You can test Apache's server status with this command:

sudo service apache2 status

If the service is running, "apache2 is running" will be printed to your terminal. Otherwise, you can start the service with this command:

sudo service apache2 start

Step 2

To use PHP5-FPM with Apache, we need to install libapache2-mod-fastcgi module. The libapache2-mod-fastcgi module is not available in the Ubuntu package. Therefore, we need to update the apt sources. Follow these steps.

  1. Run the following command to edit the source list:

    sudo nano /etc/apt/sources.list
  2. Add the following lines at the end of the file:

    deb trusty multiverse
    deb-src trusty multiverse
    deb trusty-updates multiverse
    deb-src trusty-updates multiverse
  3. Press CTRL + X, then Y to save the file.

  4. Install libapache2-mod-fastcgi:

    sudo apt-get update
    sudo apt-get install libapache2-mod-fastcgi

Step 3

Install PHP5-FPM with the following command:

sudo apt-get install php5-fpm

Step 4

Create the PHP5-FPM configuration file for Apache:

sudo nano /etc/apache2/conf-available/php5-fpm.conf

... then add the following lines:

<IfModule mod_fastcgi.c>
AddHandler php5-fcgi .php
Action php5-fcgi /php5-fcgi
Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -socket /var/run/php5-fpm.sock -pass-header Authorization

<Directory /usr/lib/cgi-bin>
    Require all granted


Press CTRL + X, then Y to save the file.

Enable the new modules and configuration for Apache:

sudo a2enmod actions fastcgi alias
sudo a2enconf php5-fpm

Finally, restart Apache:

sudo service apache2 restart

Step 5

Test your installation by creating a test PHP file:

sudo nano /var/www/html/info.php

Add the following content to the file:

<?php phpinfo(); ?>

Press CTRL + X, then Y to save the file.

Now open the http://[SERVER_IP_ADDRESS]/info.php in browser. Upon success, you will see information about PHP and your server. Your setup is now complete.

Want to contribute?

You could earn up to $600 by adding new articles