Install LAMP Stack on Debian 9 - Step by Step Process ?

A LAMP stack is a group of open source software: Linux, Apache, MySQL and PHP which allows developers run their websites.

Basically, LAMP is actually an acronym which represents the Linux operating system, with the Apache web server. The site data is stored in a MariaDB database, and dynamic content is processed by PHP.

Here at Ibmi Media, as part of our Server Management Services, we regularly help our Customers to perform related LAMP queries on Debian Linux System.

In this context, we shall look into how to install a LAMP stack on a Debian 9 server.

How to Install LAMP Stack on Debian ?

To perform this installation procedure, follow the steps given below.

Start by using a non-root sudo enabled user account.

1. Install Apache

Apache web server is most popular web server in the world. It also has a great community support so it's default choice for hosting a website. 

Execute following commands to install Apache :

$ sudo apt update
$ sudo apt install apache2 

Here, we use sudo as command so these operations are executed with root privileges. It will prompt you to enter your regular user password to verify.

On entering correct password, it will show details which packages will be install and how much disk space they will take. 

Press Y and hit Enter to continue and installation process will started.

After that, Make sure that your firewall allows HTTP and HTTPS traffic. 

You can check "WWW Full" profile enables traffic or not :

$ sudo ufw app info "WWW Full"
Profile: WWW Full
Title: Web Server (HTTP,HTTPS)
Description: Web server (HTTP,HTTPS)

It should show that it enables traffic to ports 80 and 443 or you can Allow incoming HTTP and HTTPS traffic for this profile:

$ sudo ufw allow in "WWW Full"

You can test it quickly by visiting your server's public IP address in your web browser:


It should display a default Debian 9 Apache web page.

This proves that you have a successful Apache installation.

2. Install MariaDB

MariaDB is a multi-threaded and open-source database management system which will organize and provide access to databases where your site can store information. It is a replacement of MySql and developed by some of the original developers of the MySql.

With the release of Debian 9, MySQL was replaced with MariaDB as the default database system.

Execute following command to install mysql server:

$ sudo apt install mariadb-server

By default, MariaDB service will start automatically. 

You can verify it by typing:

$ sudo systemctl status mariadb

Finally, your MariaDB server is installed and ready to use.

3. Install PHP

PHP component will process code to display dynamic content. Execute below command with helper packages so it can communicate with Apache and can make connection with MariaDB database:

$ sudo apt install php libapache2-mod-php php-mysql

So PHP installed without any issue and we will check it now. Now, restart Apache web server in order to get your changes by executing below command :

$ sudo systemctl restart apache2

4. Testing LAMP Setup

In order to test that your system is configured properly for PHP, create a very basic PHP script called info.php.

So create this file at web root of server. In Debian 9 directory is located at /var/www/html/ so create file here by executing this command :

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

Add the following PHP code inside the file:


At last, Save and close file. Now visit this page in web browser using your server's public IP address as following :


It should show the PHP information page.

[Need urgent assistance in fixing Apache errors? We can help you. ]


This article covers how to install LAMP on Debian server along with PHPMyAdmin to manage your database. LAMP stands for Linux OS, with Apache web server, Data store in a MySql or MariaDB database, and dynamic content is processed by PHP.

To install Apache on Debian:

1. Run the following command:

$ apt-get install apache2

2. To restart your web server by typing the following command:

$ service apache2 restart