5th June, 2016 | Tutorials |

Install and Setup Joomla on CentOS-7

Want your very own server? Get our 1GB memory, Xeon V4, 25GB SSD VPS for £10.00 / month.

Get a Cloud Server


Joomla is an immensely popular and award-winning open source Content Management System (CMS) that enables users to build websites and create potent online applications in an unperturbed manner.

Absolute user-friendliness and flexibility make Joomla amongst the most sought-after CMS software out there. It uses a PHP application, in addition to a back-end database - in this case, MySQL. Joomla was created in 2005, and boasts of more than 10,000 add-ons for customised functionality. No wonder then that it remains the second most popular virtual content management systems out there.

Joomla enables you to build Web sites and powerful online applications. Many aspects, including its ease-of-use and extensibility have made Joomla the most popular website build and management software available. Best of all, Joomla is an open source solution that is freely available to everyone. Since Joomla is based on PHP and MySQL, you're building powerful applications on an open platform anyone can use, share, and support.

Joomla is written in PHP, uses object-oriented programming (OOP) techniques and software design patterns, stores data in a MySQL, or PostgreSQL database and includes features such as page caching, RSS feeds, printable versions of pages, news flashes, blogs, search, and support for language internationalization.

This tutorial explains the process of installing Joomla on CentOS 7 in the form of a simple-to-follow guide.

A content management system is software that keeps track of every piece of content on your Web site, much like your local public library keeps track of books and stores them. Content can be simple text, photos, music, video, documents, or just about anything you can think of. A major advantage of using a CMS is that it requires almost no technical skill or knowledge to manage. Since the CMS manages all your content, you don't have to.


The following are core features of the Joomla CMS -


Getting Started

Let's start make sure that your Centos-7 server is fully up to date.

You can update your server by running the following command:

sudo yum update -y

Install LAMP Stack

To get started, first you will need to install the LAMP (Apache2, MariaDB and PHP) stack before installing joomla.

You can easily install it by running the following command:

sudo yum install httpd mariadb mariadb-server php php-mysql -y

The line above will install everything that Joomla requires and some. During the installation of the above packages, you'll be prompted to create a root password for MySQL database.

Create and confirm a root password. Remember it, because you'll need it to connect to the Database server later to create a database for Joomla application.

Install & Setup Joomla

Before starting, update the system by running the following command:

sudo yum -y update

Let's download tar to decompress the installation file and some dependencies that we will need to install Joomla.

sudo yum install wget unzip

Creating a Database and User for Joomla

For Joomla to function correctly, we must create a database. This tutorial uses MariaDB, so let's access MariaDB with the following command,

mysql -u root -p

Now, we must first begin creating the database that Joomla will use. This can be accomplished with the following command replacing yourdbname with your database name,



    Query OK, 1 row affected (0.00 sec)

With the database created we must now create a user so it can access the database. This can be accomplished with the following command replacing yourjoomlauser with your desired username and replace yourjoomlapassword with your desired password.

CREATE USER yourjoomlauser@localhost IDENTIFIED BY 'yourjoomlapassword';


    Query OK, 0 rows affected (0.00 sec)

Next, we grant database access to your recently created user with the following command,

GRANT ALL PRIVILEGES ON yourdbname.* TO yourjoomlauser@localhost;


    Query OK, 0 rows affected (0.00 sec)

Finally, we must refresh MariaDB so the system can flush the newly added privileges and for the changes to take effect, then exit your session. This can be accomplished with the following commands,


Next, restart MariaDB service and auto enable at system startup:

sudo systemctl restart mariadb.service sudo systemctl enable mariadb.service

Installing Joomla

Download the most recent stable Joomla release. For this tutorial, that's version 3.4.5. You can check here to find the most recent release.


After we have downloaded the package, we must move the zip file to the html directory. This can be accomplished with the following command:

sudo mv /var/www/html

Now, change to that directory and unzip the to get ready for the installation:

sudo cd /var/www/html

Finally, we can continue with the Joomla installation by unzipping the installation file with the following command:

sudo unzip

Furthermore, with the following command, we can apply the appropriate permissions for the Joomla directory that was just created.

sudo chown -R apache:apache /var/www/html sudo chmod -R 755 /var/www/html

Next, start Apache service and enable it to start on boot:

sudo systemctl start httpd sudo systemctl enable httpd

Next, You will need to allow access from outside to port 80 and 443 through your firewall. You can do this by running the following commands:

sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https

Now, reload the firewall service for the changes to take effect.

sudo firewall-cmd --reload

Joomla's Web Configuration

Your server is now configured correctly to run the web-based installation by going to the following:


You will see the initial Joomla installation page. Insert your site details and then click “Next.”

On next tab insert your MariaDB database information within the forms. Insert your database information that was set up at the beginning of this guide. Once done click "Next."

Take a look at the overview and make sure your information is correct. Once satisfied click “Install.”

Main Configuration

HP_NO_IMG/data/uploads/users/fd35bf73-10f3-43bf-b753-4edc26228307/1278027746.png" alt="" />

Database Configuration

HP_NO_IMG/data/uploads/users/fd35bf73-10f3-43bf-b753-4edc26228307/1421042650.png" alt="" />


HP_NO_IMG/data/uploads/users/fd35bf73-10f3-43bf-b753-4edc26228307/534209964.png" alt="" />



In this tutotial you learned how to install & setup Joomla with Apache on CentOS 7 server. Joomla is designed to be easy to install and set up even if you're not an advanced user. Since Joomla is so easy to use, as a Web designer or developer, you can quickly build sites for your clients. Then, with a minimal amount of instruction, you can empower your clients to easily manage their own sites themselves. Once you setup Joomla successfully, you can now start building your website content!.

Want your very own server? Get our 1GB memory, Xeon V4, 25GB SSD VPS for £10.00 / month.

Get a Cloud Server