How to Install Joomla with LAMP Stack on AlmaLinux 9

Joomla is a free and open-source content management system for publishing web content on websites. Web content applications include discussion forums, photo galleries, e-Commerce, user communities, and numerous other web-based applications. In this article, we are going to learn how to install Joomla on AlmaLinux 9. So, let’s get started.

Checkout the Joomla Project Here.

Try this wiki on our VPS. Starting at just $5/month with 24x7 In-house customer support.

Pre-requisites :

  • A system with AlmaLinux 9 installed and running.

  • root access to the system.

  • LAMP Stack installed and running, for this, you can refer to one of our guides on installing the LAMP Stack (Apache, MariaDB, and PHP).

Once you're all set, we'll proceed with Joomla installation and configuration.

Create Database

Let us begin with creating a Database and a user. We will then grant the required privileges to the user so it can interact with the Database.

mysql -u root

CREATE DATABASE crowncloud_db;

GRANT ALL ON crowncloud_db.* TO crowncloud@localhost IDENTIFIED BY 'YOUR-PASSWORD-HERE';

FLUSH PRIVILEGES;

QUIT

The above commands will give complete access to the user crowncloud_db. Replace YOUR-PASSWORD-HERE with a safe and secure password.

Install Let's Encrypt SSL Certificate

Next, we will install the Let's Encrypt SSL cert so we can have the domain running on HTTPS.
You can refer the following link for instructions on how to Install Let's Encrypt.

Download Joomla

Download Joomla from official website : Click here.

 dnf install wget unzip

 wget https://downloads.joomla.org/cms/joomla4/4-2-6/Joomla_4-2-6-Stable-Full_Package.zip

 unzip Joomla_4-2-6-Stable-Full_Package.zip -d /var/www/html/joomla

Setting up File Permissions

Let's make the folders readable.

chmod -R 755 /var/www/html/joomla

chown -R apache:apache /var/www/html/joomla

chcon -R -t httpd_sys_content_rw_t /var/www/html/joomla

Configuring Apache vHost

Create a new apache configuration file dev.domainhere.info.conf for the domain with the following command:

nano /etc/httpd/conf.d/dev.domainhere.info.conf

Add the following codes:

<VirtualHost *:80>

  ServerName dev.domainhere.info
  DocumentRoot /var/www/html/joomla

  <Directory /var/www/html/joomla/>
   DirectoryIndex index.html index.php
   Options -Indexes +FollowSymLinks
   AllowOverride All
  </Directory>

  ErrorLog /var/log/httpd/dev.domainhere.info-error.log
  CustomLog /var/log/httpd/dev.domainhere.info-access.log combined
  RewriteEngine on
  RewriteCond %{SERVER_NAME} =dev.domainhere.info
  RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]

</VirtualHost>

Change dev.domainhere.info with Your Domain Name.

Now, restart & check the apache with the following commands:

systemctl restart httpd

systemctl status httpd

Enable Firewall:

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

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

firewall-cmd --reload

Configuring Joomla

Now open the URL from your browser, this will redirect you to configuring the final parts of the Joomla installation.

https://dev.domainhere.info/

Replace the dev.domainhere.info with the actual IP or domain configured on the server.

Input the Database details which was configured earlier. Follow the below steps:

Now you have successfully installed Joomla with LAMP Stack on AlmaLinux 9.