Nur Hamim
Nur Hamim Anak desa yang gemar berkomunitas, suka menulis dan mencari hal baru seputar Unix/Linux dan Cloud. Saat ini sedang menempuh pendidikan S1 TI di Unindra dan kebetulan bekerja di PT Biznet GIO Nusantara

Cara Instalasi Joomla Menggunakan Nginx di CentOS 8


Cara Instalasi Joomla Menggunakan Nginx di CentOS 8

Joomla merupakan sebuah CMS (content management system) yang open source (bebas) digunakan untuk kebutuhan website baik untuk pribadi, company profile dan masih banyak lagi lainnya karena joomla sudah mempunyai ribuan extensi dan tema yang dapat Anda gunakan secara free.

Ratusan pengembang telah meningkatkan Joomla! sejak versi pertama yang dirilis pada tahun 2005. Upaya besar ini telah membuat Joomla! sangat populer, mudah digunakan, stabil dan aman.

Untuk melihat requirements untuk instalasi Joomla dapat di lihat dapat link berikut: Technical Requirements.

Untuk mengikuti tutorial ini pastikan Anda sudah melakukan instalasi web server nginx, database mariadb/mysql dan tentunya php.

Jika belum silakan mengikuti panduan berikut:

Selanjutnya pastikan service nginx, php-fpm dan database Anda running

1
2
3
4
5
6
7
[root@tutorial ~]# systemctl status nginx |grep Active
   Active: active (running) since Mon 2020-08-24 07:38:54 UTC; 3h 56min ago
[root@tutorial ~]# systemctl status php-fpm |grep Active
   Active: active (running) since Mon 2020-08-24 11:22:29 UTC; 13min ago
[root@tutorial ~]# systemctl status mariadb |grep Active
   Active: active (running) since Sun 2020-08-23 04:11:36 UTC; 1 day 7h ago
[root@tutorial ~]#

Insall beberapa module php yang dibutuhkan Joomla

1
2
[root@tutorial ~]#
[root@tutorial ~]# dnf install php-curl php-xml php-zip php-mysqlnd php-intl php-gd php-json php-ldap php-mbstring php-opcache 

Unduh Joomla dan menentukan root direktori Joomla

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@tutorial nginx]#
[root@tutorial nginx]# wget https://downloads.joomla.org/cms/joomla3/3-9-20/Joomla_3-9-20-Stable-Full_Package.zip?format=zip
--2020-08-24 11:37:12-- https://downloads.joomla.org/cms/joomla3/3-9-20/Joomla_3-9-20-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.20-Stable-Full_Package.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIZ6S3Q3YQHG57ZRA%2F20200824%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20200824T113706Z&X-Amz-Expires=60&X-Amz-SignedHeaders=host&X-Amz-Signature=577cd6c2074ecf48e53c3cd5ed5bfd473d537d51dd057d60ce0301b44a9fbbda [following]
--2020-08-24 11:37:13-- https://s3-us-west-2.amazonaws.com/joomla-official-downloads/joomladownloads/joomla3/Joomla_3.9.20-Stable-Full_Package.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIZ6S3Q3YQHG57ZRA%2F20200824%2Fus-west-2%2Fs3%2Faws4_request&X-Amz-Date=20200824T113706Z&X-Amz-Expires=60&X-Amz-SignedHeaders=host&X-Amz-Signature=577cd6c2074ecf48e53c3cd5ed5bfd473d537d51dd057d60ce0301b44a9fbbda
Resolving s3-us-west-2.amazonaws.com (s3-us-west-2.amazonaws.com)... 52.218.235.72
Connecting to s3-us-west-2.amazonaws.com (s3-us-west-2.amazonaws.com)|52.218.235.72|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 13969565 (13M) [application/zip]
Saving to: ‘Joomla_3-9-20-Stable-Full_Package.zip?format=zip’

Joomla_3-9-20-Stable-Full_Package.zip? 100%[==========================================================================>] 13.32M 6.24MB/s in 2.1s

2020-08-24 11:37:16 (6.24 MB/s) - ‘Joomla_3-9-20-Stable-Full_Package.zip?format=zip’ saved [13969565/13969565]

[root@tutorial nginx]#

Pada tutorial kali ini kami menggunakan Joomla versi latest saat ini yaitu 3.9.20 versi ini akan berubah ke versi yang lebih tinggi bergantung dari pihak Joomla untuk itu jika Anda ingin mengetahui rilis latest Joomla silakan akses link berikut: https://downloads.joomla.org/latest

Selanjutnya unzip file Joomla yang baru saja di unduh.

1
2
[root@tutorial nginx]# mkdir joomla
[root@tutorial nginx]# unzip Joomla_3-9-20-Stable-Full_Package.zip\?format\=zip -d joomla/

Memberikan hak akses dan owner ke direkori Joomla

1
2
[root@tutorial nginx]# chown -R nginx:nginx joomla/
[root@tutorial nginx]# chmod -R 755 joomla/

Selanjutnya membuat database Joomla

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
[root@tutorial nginx]# mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 91
Server version: 10.3.17-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.000 sec)

MariaDB [(none)]> create user 'user_joomla'@'localhost' identified by 'password_joomla';
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> grant all privileges on joomla.* to 'user_joomla'@'localhost';
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> quit
Bye
[root@tutorial nginx]#

Selanjutnya membuat server block Nginx

1
2
[root@tutorial nginx]#
[root@tutorial nginx]# vim /etc/nginx/conf.d/joomla.conf

Berikut isi dari server block Joomal

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
server {
        listen 80;
        server_name joomla.nurhamim.my.id;
        root /usr/share/nginx/joomla;
        index index.php index.html index.htm;

        location / {
                try_files $uri $uri/ /index.php?$query_string;
        }

        location ~ \.php {
                include fastcgi.conf;
                fastcgi_split_path_info ^(.+\.php)(/.+)$;
                fastcgi_pass unix:/run/php-fpm/www.sock;
        }
        location ~ /\.ht {
                deny all;
        }
}

Server block diatas mengguankan unix socket untuk koneksi nginx ke php-fpm jika Anda ingin menggunakan socket tcp/port silakan ubah di sisi php-fpm listennya menjadi tcp/port.

Jika sudah pastikan tidak ada warning ataupun kesalahan konfigurasi di server block Nginx

1
2
3
4
[root@tutorial nginx]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
[root@tutorial nginx]#

Reload nginx dan php-fpm

1
2
3
[root@tutorial nginx]#
[root@tutorial nginx]# systemctl reload nginx
[root@tutorial nginx]# systemctl reload php-fpm

Pastikan sub domain atau domain Anda sudah diarahkan ke IP Public VM atau VPS Anda contohnya

Jika belum pastikan Anda sudah menambahkan A record pada sub domain atau domain Anda di sisi DNS management domain Anda

Apabila sudah sesuai semua silakan akses melalui browser untuk proses instalasi, jika berhasil akan seperti berikut

Silakan isi semua field yang ada tanda (*) nya lalu Next

Selanjutnya konfigurasi database Joomla, silakan isikan username, password dan nama database yang sudah dibuat sebelumnya lalu Next

Selanjutnya konfigurasi FTP, untuk step ini bisa di skip silakan klik Next

Langkah terakhir ayitu overview disini Anda dapat memilih apakah ingin install sample data atau tidak lalu scroll ke bawah untuk pre-check instalasi

Gambar diatas terdapat warning configuration.php Writeable untuk mengatasi hal ini silakan ubah permission installation pada folder joomla menjadi 777

1
2
[root@tutorial joomla]#
[root@tutorial joomla]# chmod -R 777 installation/

Jika sudah silakan klik Install dan tunggu proses instalasi sampai selesai

Jika sudah selesai akan nampak seperti berikut

Selamat Joomla sudah berhasil di install, silakan klik _ Remove “Installation” Folder _ untuk menghapus folder instalasi atau dapat langsung dihapus dari terminal saja

1
2
3
4
[root@tutorial nginx]# cd joomla/
[root@tutorial joomla]#
[root@tutorial joomla]# rm -rf installation/
[root@tutorial joomla]#

Jika sudah silakan akses Administator Joomla Anda

Apabila berhasil akan nampak seperti berikut ini

Berikut tampilan default dari Joomla

Selamat mencoba 😁

comments powered by Disqus