How to install Joomla CMS on RHEL7.6
- 00:38 yum install httpd mariadb-server -y
- 00:59 systemctl start mariadb httpd
- 01:10 systemctl start mariadb httpd
- 01:43 mysql_secure_installation
- 02:10 mysql -u root -p
- 03:54 wget https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
- 04:07 rpm -Uvh webtatic-release.rpm
- 04:16 wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm
- 04:24 rpm -Uvh remi-release-7.rpm
- 04:36 yum-config-manager --enable remi-php72
- 04:54 yum install php php-gd php-pdo php-mbstring php-mcrypt php-mysql php-simplexml php-pecl-zip php-imap -y
- 05:26 mkdir /var/www/joomla
- 05:36 cd /var/www/joomla/
- 05:44 wget https://downloads.joomla.org/cms/joomla3/3-9-4/Joomla_3-9-4-Stable-Full_Package.zip?format=zip
- 05:57 mv Joomla_3-9-4-Stable-Full_Package.zip?format=zip Joomla_3-9-4-Stable-Full_Package.zip
- 06:10 unzip Joomla_3-9-4-Stable-Full_Package.zip
- 06:33 chmod –R 775 joomla/
- 06:40 chown -R apache. joomla/
- 07:00 vim /etc/httpd/conf.d/joomla.conf
Installation of Joomla CMS on RHEL7.6
Introduction:
Joomla is a free and open-source content management system (CMS) for publishing web content. This tutorial covers the method to install Joomla CMS on RHEL7.6
Installation Procedure:
Install apache and mariadb server using below command
[root@linuxhelp ~]# yum install httpd mariadb-server -y
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
Resolving Dependencies
--> Running transaction check
---> Package httpd.x86_64 0:2.4.6-88.el7 will be installed
--> Processing Dependency: httpd-tools = 2.4.6-88.el7 for package: httpd-2.4.6-88.el7.x86_64
---> Package mariadb-server.x86_64 1:5.5.60-1.el7_5 will be installed
--> Processing Dependency: mariadb(x86-64) = 1:5.5.60-1.el7_5 for package: 1:mariadb-server-5.5.60-1.el7_5.x86_64
--> Processing Dependency: perl-DBD-MySQL for package: 1:mariadb-server-5.5.60-1.el7_5.x86_64
….
…..
Verifying : httpd-2.4.6-88.el7.x86_64 2/5
Verifying : perl-DBD-MySQL-4.023-6.el7.x86_64 3/5
Verifying : 1:mariadb-5.5.60-1.el7_5.x86_64 4/5
Verifying : httpd-tools-2.4.6-88.el7.x86_64 5/5
Installed:
httpd.x86_64 0:2.4.6-88.el7 mariadb-server.x86_64 1:5.5.60-1.el7_5
Dependency Installed:
httpd-tools.x86_64 0:2.4.6-88.el7 mariadb.x86_64 1:5.5.60-1.el7_5 perl-DBD-MySQL.x86_64 0:4.023-6.el7
Complete!
Next, We have to start apache and mariadb services
[root@linuxhelp ~]# systemctl start mariadb httpd
Then secure the mysql server using following steps
[root@linuxhelp ~]# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n]
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n]
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n]
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
Now, log in the mysql and create the essentials
[root@linuxhelp ~]# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 5.5.60-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> create database joomla;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> create user user@localhost identified by 'linuxc';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> grant all privileges on joomla.* to user@localhost;
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.01 sec)
MariaDB [(none)]> exit
Bye
Next, Download the webtatic repo
[root@linuxhelp ~]# wget https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
--2020-08-18 19:49:44-- https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Resolving mirror.webtatic.com (mirror.webtatic.com)... 46.101.64.32
Connecting to mirror.webtatic.com (mirror.webtatic.com)|46.101.64.32|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 13152 (13K) [application/x-redhat-package-manager]
Saving to: ‘webtatic-release.rpm’
100%[==============================================================================>] 13,152 --.-K/s in 0s
2020-08-18 19:49:45 (116 MB/s) - ‘webtatic-release.rpm’ saved [13152/13152]
Then, install the downloaded repo
[root@linuxhelp ~]# rpm -Uvh webtatic-release.rpm
warning: webtatic-release.rpm: Header V4 RSA/SHA1 Signature, key ID 62e74ca5: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:webtatic-release-7-3 ################################# [100%]
Same as above download and install the remi-release repo
[root@linuxhelp ~]# wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm
--2020-08-18 19:52:26-- http://rpms.remirepo.net/enterprise/remi-release-7.rpm
Resolving rpms.remirepo.net (rpms.remirepo.net)... 195.154.241.117, 2001:bc8:33a1:100::1
Connecting to rpms.remirepo.net (rpms.remirepo.net)|195.154.241.117|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 20732 (20K) [application/x-rpm]
Saving to: ‘remi-release-7.rpm’
100%[==============================================================================>] 20,732 125KB/s in 0.2s
2020-08-18 19:52:27 (125 KB/s) - ‘remi-release-7.rpm’ saved [20732/20732]
[root@linuxhelp ~]# rpm -Uvh remi-release-7.rpm
warning: remi-release-7.rpm: Header V4 DSA/SHA1 Signature, key ID 00f97f56: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:remi-release-7.8-1.el7.remi ################################# [100%]
Now, we have to enable the php-version 7.2 in remi repo using the following command
[root@linuxhelp ~]# yum-config-manager --enable remi-php72
Loaded plugins: langpacks, product-id, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
=================================================== repo: remi-php72 ===================================================
[remi-php72]
async = True
bandwidth = 0
base_persistdir = /var/lib/yum/repos/x86_64/7Server
baseurl =
cache = 0
…
…
ui_id = remi-php72
ui_repoid_vars = releasever,
basearch
username =
After, we can install the php and its module
[root@linuxhelp ~]# yum install php php-gd php-pdo php-mbstring php-mcrypt php-mysql php-simplexml php-pecl-zip php-imap -y
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
remi-php72 | 3.0 kB 00:00:00
remi-safe | 3.0 kB 00:00:00
webtatic | 3.6 kB 00:00:00
(1/4): webtatic/x86_64/group_gz | 448 B 00:00:01
(2/4): remi-php72/primary_db | 239 kB 00:00:01
(3/4): webtatic/x86_64/primary_db | 253 kB 00:00:02
(4/4): remi-safe/primary_db | 1.8 MB 00:00:03
….
…
.x86_64 0:1.0.3-1.el7.remi
libzip5.x86_64 0:1.7.3-1.el7.remi oniguruma5php.x86_64 0:6.9.5+rev1-2.el7.remi php-cli.x86_64 0:7.2.33-1.el7.remi
php-common.x86_64 0:7.2.33-1.el7.remi php-json.x86_64 0:7.2.33-1.el7.remi
Complete!
Make directory for joomla under www
[root@linuxhelp ~]# mkdir /var/www/joomla
Change directory to joomla
[root@linuxhelp ~]# cd /var/www/joomla/
Here, we have download the joomla cms
[root@linuxhelp joomla]# wget https://downloads.joomla.org/cms/joomla3/3-9-4/Joomla_3-9-4-Stable-Full_Package.zip?format=zip
--2020-08-18 19:56:02-- https://downloads.joomla.org/cms/joomla3/3-9-4/Joomla_3-9-4-Stable-Full_Package.zip?format=zip
Resolving downloads.joomla.org (downloads.joomla.org)... 72.29.124.146
Connecting to downloads.joomla.org (downloads.joomla.org)|72.29.124.146|:443... connected.
HTTP request sent, awaiting response... 303 See Other
Location: https://s3-us-west-2.amazonaws.com/joomla-official-downloads/joomladownloads/joomla3/Joomla_3.9.4-Stable-Full_Package.zip?X-Amz-
….
….
100%[==============================================================================>] 1,38,69,429 1.12MB/s in 13s
2020-08-18 19:56:18 (1005 KB/s) - ‘Joomla_3-9-4-Stable-Full_Package.zip?format=zip’ saved [13869429/13869429]
The downloaded joomla cms is not in zip file
[root@linuxhelp joomla]# ll
total 13548
-rw-r--r--. 1 root root 13869429 Mar 11 2019 Joomla_3-9-4-Stable-Full_Package.zip?format=zip
So, I convert the file into zip file using the below command
[root@linuxhelp joomla]# mv Joomla_3-9-4-Stable-Full_Package.zip?format=zip Joomla_3-9-4-Stable-Full_Package.zip
Then, unzip the joomla zip file
[root@linuxhelp joomla]# unzip Joomla_3-9-4-Stable-Full_Package.zip
Archive: Joomla_3-9-4-Stable-Full_Package.zip
inflating: LICENSE.txt
inflating: README.txt
creating: administrator/
creating: administrator/cache/
inflating: administrator/cache/index.html
creating: administrator/templates/
creating: administrator/templates/system/
inflating: administrator/templates/system/component.php
creating: administrator/templates/system/css/
inflating: administrator/templates/system/css/system.css f
inflating: tmp/index.html
inflating: web.config.txt
….
….
Now, we have to change the ownership and permission for the joomla directory
[root@linuxhelp www]# chmod –R 775 joomla/
[root@linuxhelp www]# chown -R apache. joomla/
Create virtual host to access our website from the browser
[root@linuxhelp www]# vim /etc/httpd/conf.d/joomla.conf
<virtualhost *:80>
Servername www.linuxhelp1.com
Document root /var/www/joomla/
<directory /var/www/joomla/>
Allowoverride all
Allow from all
</directory>
</virtualhost>
Configure the hosts file with the following information
[root@linuxhelp www]# vim /etc/hosts
<provide your host ip> <your-domainname>
After the configuration we need to restart the Apache service
[root@linuxhelp www]# systemctl restart httpd
Once the installation is completed from the browser, at the end of the installation there will be configuration.php content Copy the content then create the file named as configuration.php under /var/www/joomla with this content
[root@linuxhelp joomla]# vim configuration.php
Paste the content in this file.
Open Browser and type the domain name in the search bar
Configure the Main configuration
Here, give mysql user credentials
Overview the configuration then click on Install

After the installation Remove the Installation folder

With this, the method to install Joomla CMS on RHEL7.6 comes to end.
Comments ( 0 )
No comments available