You are on page 1of 20

How to Install LAMP (Linux, Apache, MariaDB and PHP) on

Fedora 23 Server and Workstation

by Marin Todorov | Published: November 6, 2015 | Last Updated: March 7, 2016
Download Your Free eBooks NOW - 10 Free Linux eBooks for Administrators | 4 Free Shell Scripting eBooks
If you ever wanted to host your own website or just want to try your PHP programming skills, you will most definitely have stumbled upon
For those of you, who dont know what LAMP is, this is a stack of web service software. LAMP uses the first letter of each package included in
it Linux, Apache, Mysql/MariaDB and PHP.

Install LAMP in Fedora 23

In this article, we will show you how to install LAMP (Linux, Apache, MySQL/MariaDB and PHP) in Fedora 23 Server and Workstation.
I will assume that you have already completed the installation of Fedora 23 Server and Workstation, which basically completes the Linux part.
But if you havent completed the Fedora install yet, you can check our guides here:
1. How to Install Fedora 23 Workstation
2. Installation of Fedora 23 Server and Administration with Cockpit
Before we start the installation of the rest of the packages, we recommend to update your packages with the following command:

$ sudo dnf update

Update Fedora 23 Packages

Now we can safely proceed to the installation of the rest of the packages. For easier understanding and follow up, the article will be separated in
three parts, one for each package.

Step 1: Installing Apache Web Server

1. Apache web server is the most used web server on the internet. Its powering millions of websites and is one of the most reliable solutions you
can get for a web server. There are plenty of modules that can help you customize the functionality of Apache and also security modules such as
mod_security to protect your web sites.
To install Apache in Fedora 23, you can simply run the following command:
$ sudo dnf install httpd

Install Apache Web Server in Fedora 23

2. Once the install is complete, there are few more things to be done. First we will setup Apache to automatically start upon system boot and then
we will start and verify the status of Apache.
For that purpose, run the following series of commands:
$ sudo systemctl enable httpd.service
$ sudo systemctl start httpd
$ sudo systemctl status httpd

Enable, Start and Verify Apache Server

3. To allow access to the web server over HTTP and HTTPS, you will need to allow access to it in the system firewall. For that purpose, add the
following rules in the fedora firewall:
$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --permanent --add-service=https
$ sudo systemctl reload firewalld

Enable Access to Apache on Firewall in Fedora 23

4. Now its time to check if Apache is running. Find your systems IP address with command such as:

$ ip a | grep inet

Find Fedora 23 Server IP Address

5. Now copy/paste that IP address in your browser. You should see the following page:

Check Apache Default Page

The default Apache directory is:

If you need to have files accessible over web, you should place the files in that directory.

Step 2: Installing MariaDB Server

6. MariaDB is a relational database server. It has been forked by the MySQL creator, due to concerns over Oracles acquisition of the MySQL
MariaDB is meant to remain free under the GPU general public license. Its community developed and is slowly becoming the preferred
database server by most of the recently released distributions.
To install MariaDB in Fedora 23, run the following command:
# dnf install mariadb-server

Install MariaDB in Fedora 23

7. When the install finishes, configure MariaDB to automatically start after system boot and then start and verify the status of MariaDB with the
following commands:
# systemctl enable mariadb
# systemctl start mariadb
# systemctl status mariadb

Enable and Start MariaDB

Check MariaDB Status

8. There are few settings that need to be adjusted in order to secure your MariaDB installation. To change this settings, we recommend running
the following command:
# mysql_secure_installation

This action will start a series of questions that you will need to answer in order to improve the security of your MySQL server.
Here is what you will need to do.

1. When asked for MySQL root password, leave empty. There is no password by default.
2. After that you will be asked to enter the new root password for MariaDB. Make sure to select a strong one.
3. After that, you will be prompted if you wish to remove the MariaDB anonymous user. This user is not needed, so your should be y for
4. Next, you will need to disallow remote access to the databases from root. The reason behind that is that you can later create separate
users for each database that will be able to access the required databases.
5. Continuing further, you will be asked whether or not you wish to remove the test database that was created upon installation of
MariaDB. This database is not needed so you can safely remove it.
Finally reload the database privileges and you are done.

Enter MariaDB Root Password

MySQL Secure Installation

Step 3: Installing PHP

9. PHP is a programming language used on most of the websites over the internet. Its used for creating dynamic websites. To give you an idea
of what sites you can build with PHP, I will tell you that is built on PHP.
To install PHP in Fedora 23, you will need to run the following command:

# dnf install php php-common

Install PHP in Fedora 23

10. Next install required PHP modules to run PHP/MySQL applications using following command.
# dnf install php-mysql php-pdo php-gd php-mbstring

Install PHP Modules

11. Once the installation is complete, restart Apache so it can start using PHP:
# systemctl restart httpd

12. Now lets test our settings. Create a file called info.php in the following directory: /var/www/html. You can use command such as:
# cd /var/www/html/
# nano info.php

Enter the following code:


Now save the file. Go back to your browser and enter the following:

You should now be able to see the PHP info page that you just created:

Check PHP Information

Your installation of the LAMP stack on Fedora 23 is now complete and you can start creating your awesome web projects. If you liked the
article or simply have a question, please do not hesitate to submit your comment in the section below.