How to Install PHP 7 on Debian 10 Linux Operating System

June 5, 2020


The Debian 10 Operating system comes with PHP version 7.0, and you can install like any other application package using the apt package manager.

Today, in this article, we will learn to install PHP 7.2 on Debian 10 machine.


To perform practical stuff of this tutorial, make sure you have Debian 10 installed machine and user to log in on system with sudo privileges.

Install PHP 7.2 on Debian 10

To install PHP 7.2 on Debian 10 operating system follow below steps:

Step 1: Update package list and install dependencies

To install any package on Debian system need to update the repository’s package list by using the following command:

$ sudo apt update

After updating package first need to install dependencies library package, as shown below:

$ sudo apt install apt-transport-https ca-certificates curl software-properties-common 

Step 2: Enable Ondrej’s repository

To enable repository first import the repository’s GPG key using curl command:

$ curl -fsSL | sudo apt-key add -

After importing GPG key, you can enable the Ondrej’s repository by using the following command:

$ sudo add-apt-repository "deb $(lsb_release -cs) main"

Step 3: Install PHP 7.2

After enabling the Ondrej’s repository, again update the package list and install PHP by using the following command:

$ sudo apt update
$ sudo apt install php7.2-common php7.2-cli

Step 4: Verify Installation

You can verify the php installation by checking the version of PHP by using “php –v” command, as shown below:

$ php –v

Configuring Apache to run PHP

If you are running the PHP application on the web browser, you have to configure it with web server Apache or Nginx.

In this section, we will see how to configure an Apache web server with PHP 7.2.

To configure PHP with apache, you have to install PHP and apache library for PHP by using below command:

$ sudo apt install php7.2 libapache2-mod-php

After installation of PHP and apache library restart the apache service:

$ sudo systemctl restart apache2

Configure Nginx to run PHP

Nginx doesn’t have built-in support for PHP like an apache web server. So, to use Nginx with PHP need to install another application PHP FPM, which will handle PHP files and operation.

You can install PHP and PHP FPM package by using the following command:

$ sudo apt install php7.2 php7.2-fpm

Once the PHP FPM package installed in your system, you can handle it like any other application. You can enable, start, or stop services.

You can check the status of PHP FPM by using below command:

$ systemctl status php7.2-fpm

To use PHP FPM with Nginx web server, need to edit the server block and add the following code so the Nginx can process php files using PHP FPM:

server {
    # . . . other code
    location ~ .php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;

After configuring the server block, need to restart Nginx service by using below command:

$ sudo systemctl restart nginx

Install PHP extensions

PHP has numbers of functionalities, which can have enabled by using several numbers of PHP extensions.

To enable those features, need to install PHP extension by using the following command syntax:

$ sudo apt install php-[extname]

For example, if you want to install GD, IMAP PHP extension, you can install by using the following command:

$ sudo apt install php7.2-imap php7.2-gd

After installation of PHP extension, you need to restart webserver apache/nginx and PHP FPM services.

Testing PHP

You can test PHP by using a web server, and you can identify PHP is running by a web server.

To verify PHP with the webserver, create a new file with name info.php inside the web server’s root directory “/var/www/html” with the following code:


Save the file and open the file into a web browser like below:


The function phpinfo will print the information about PHP configuration as shown as below image:


Now, you have learned “How to install PHP on Debian 10 Operating System?” and also learn to configure PHP with a web server like Apache or Nginx.

Satish Kumar

Satish Kumar

I am Satish Kumar, Founder of LinuxConcept. Linux and F.O.S.S enthusiast, love to work on open source platform and technologies.

Related Posts

How to add swap space on Ubuntu 21.04 Operating System

How to add swap space on Ubuntu 21.04 Operating System

The swap space is a unique space on the disk that is used by the system when Physical RAM is full. When a Linux machine runout the RAM it use swap space to move inactive pages from RAM. Swap space can be created into Linux system in two ways, one we can create a...

How to Install MongoDB on Debian 10 Linux

How to Install MongoDB on Debian 10 Linux

MongoDB is an open-source and free NoSQL document based database system. Nowadays, it is prevalent as most application developers are using MongoDB, which can handle big data. As a MongoDB is a NoSQL database, It stores data in JSON-like documents where fields can...

How to Setup a Firewall with UFW on Debian 10 Linux

How to Setup a Firewall with UFW on Debian 10 Linux

Nowadays, a Firewall is an essential utility and property of any system for security; by default Debian Operating system having a firewall configuration tool named UFW (Uncomplicated Firewall). UFW is a user-friendly front-end tool to manage iptables firewall rules....



Submit a Comment

Your email address will not be published. Required fields are marked *

three − 2 =

News & Updates

Join Our Newsletter