In this tutorial, we will show you how to install Joomla on CentOS 7. For those of you who didn’t know, Joomla is a free and open-source popular content management that uses PHP and a backend database, such as MySQL. It offers a wide variety of features that make it an incredibly flexible content management system right out of the box. A major advantage of using a content management system (CMS) is that it requires almost no technical skill or knowledge to manage.
This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple. I will show you the step-by-step installation of Joomla on CentOS 7.
- A server running one of the following operating systems: CentOS 7.
- It’s recommended that you use a fresh OS install to prevent any potential issues.
- SSH access to the server (or just open Terminal if you’re on a desktop).
non-root sudo useror access to the
root user. We recommend acting as a
non-root sudo user, however, as you can harm your system if you’re not careful when acting as the root.
Install Joomla on CentOS 7
Step 1. Install the required packages.
yum update yum install httpd mysql-server php php-mysql wget unzip -y
Step 2. Download the latest version of Joomla.
Unzip and copy the package into the web server’s document root:
unzip Joomla_3.4.0-Stable-Full_Package.zip -d /var/www/html
Change ownership of
chown -R apache:apache /var/www/html chmod -R 755 /var/www/html
Step 3. Configure Apache webserver.
First add the lines “ServerName fqdn” and “NameVirtualHost *:80″ to Apache global configuration file (
/etc/httpd/conf/httpd.conf) with the following echo commands:
echo “ServerName sys.idroot.us” >> /etc/httpd/conf/httpd.conf echo “NameVirtualHost *:80″ >> /etc/httpd/conf/httpd.conf
Create a new virtual host configuration file at the location
##nano /etc/httpd/conf.d/joomla.conf <VirtualHost *:80> ServerAdmin firstname.lastname@example.org ServerName sys.idroot.us DocumentRoot /var/www/html ErrorLog /var/log/httpd/sys-error.log CustomLog /var/log/httpd/sys-common.log common </VirtualHost>
Step 4. Create MySQL database and user.
# mysql -u root -p mysql> CREATE DATABASE joomla; mysql> GRANT ALL PRIVILEGES on joomla.* to 'joomlauser'@'localhost' identified by 'your_password'; mysql> FLUSH PRIVILEGES;
Step 5. Start Apache and MySQL services.
systemctl restart mysqld.service systemctl restart httpd.service
Step 6. Configure Iptables or firewall.
firewall-cmd --permanent --zone=public --add-service=http firewall-cmd --reload
Step 7. Access the Joomla Installer.
Now you can finish your Joomla installation by opening your favorite web browser and navigate to
Congratulations! You have successfully installed Joomla. Thanks for using this tutorial for installing the Joomla content management system on CentOS 7 systems. For additional help or useful information, we recommend you to check the official Joomla website.