Install and Setup Joomla on CentOS-7

In the future, using the website, you agree to the rules of using Cookies. Read more. I agree

Install and Setup Joomla on CentOS-7


Joomla is an extremely popular and award-winning open source content management system (CMS) that allows users to create websites and create powerful online applications without interference.

Absolute user friendliness and flexibility make Joomla one of the most popular CMS applications. It uses a PHP application, in addition to an internal database - in this case, MySQL. Joomla was created in 2005 and boasts over 10,000 add-ons for individual functionality. It is not surprising that it remains the second most popular virtual content management system.

Joomla allows you to create websites and powerful online applications. Many aspects, including ease of use and extensibility, have made Joomla the most popular website creation and management software. Best of all, Joomla is an open source solution that is available to everyone. Since Joomla is based on PHP and MySQL, you create powerful applications on an open platform that everyone can use, share and support.

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

This guide explains how to install Joomla on CentOS 7 in an easy-to-understand guide.

A content management system is software that tracks every piece of content on your website, just like your local public library tracks books and stores them. Content can be plain text, photos, music, videos, documents, or anything you can think of. The main advantage of using CMS is that it practically does not require technical skills or knowledge to manage. Since CMS manages all your content, you don’t need to.


  • The following are the main features of Joomla CMS.
  • Fully database driven site engines
  • News, product or service sections, fully editable and manageable
  • Topic sections can be added by authors
  • Fully customizable layouts, including left, center and right menu fields
  • Download images from the browser to your own library for use anywhere on the site
  • Dynamic forum / Poll / Voting in place
  • Runs on Linux, FreeBSD, MacOSX server, Solaris, and AIX


  • Server running CentOS 7.
  • Static IP address for your server.
  • A non-root user account with sudo privilege configured on your server.

Getting started

Let's start by saying that your Centos-7 server is fully updated. You can upgrade your server by running the following command:

sudo yum update -y

Install LAMP Stack

First you need to install the LAMP stack (Apache2, MariaDB and PHP) 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 all that Joomla and some require. During the installation of the above packages, you will be prompted to create a root password for the MySQL database. Create and confirm the root password. Remember this because you will need it later to connect to the database server in order to create a database for the Joomla application.

Install and configure Joomla

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

sudo yum -y update

Let's upload tar to unzip 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 work correctly, we must create a database. This tutorial uses MariaDB, so let's move on to MariaDB with the following command:

mysql -u root -p

Now we must first start creating the database that Joomla will use. This can be done with the following command, replacing your database name with the name of your database:



Query OK, 1 row affected (0.00 sec)

After creating the database, we must create the user so that he can access the database. This can be done using the following command, replacing your joomlauser with the desired username and replacing the joomlapass password with the desired password.

CREATE USER yourjoomlauser@localhost IDENTIFIED BY 'yourjoomlapassword';


Query OK, 0 rows affected (0.00 sec)

Then we provide the database access to your newly 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 update MariaDB so that the system can reset the newly added privileges and the changes take effect, and then exit the session. This can be done using the following commands:


Next, restart the MariaDB service and automatically turn it on at system startup:

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

Install Joomla

Download the latest stable version of Joomla. For this tutorial, this is version 3.4.5. You can check here to find the latest issue.


After we downloaded the package, we need to move the zip file to the html directory. This can be done using the following command:

sudo mv /var/www/html

Now go to this directory and unzip to prepare for installation:

sudo cd /var/www/html

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

sudo unzip

In addition, with the following command, we can apply the appropriate permissions for the newly created Joomla directory.

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

Then start the Apache service and enable it at boot time:

sudo systemctl start httpd sudo systemctl enable httpd

Next, you will need to allow external access to ports 80 and 443 through the 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 restart the firewall service for the changes to take effect.

sudo firewall-cmd –reload

Joomla web configuration

Your server is now properly configured to start the installation over the Internet by going to the next:


You will see the Joomla installation start page. Paste the data of your site and click "Next".

On the next tab, paste your MariaDB database information into the forms. Paste the information about your database that was configured at the beginning of this guide. After that click "Next".

Take a look at the review and make sure your information is correct. When finished, click Install.


In this tutorial, you learned how to install and configure Joomla with Apache on a CentOS 7 server. Joomla is designed to be easy to install and configure, even if you are not an experienced user. Since Joomla is so easy to use as a web designer or developer, you can quickly create sites for your customers. Then, with a minimum of instructions, you can give your customers the ability to easily manage their own sites. After you have successfully configured Joomla, you can start creating content for your site.