InternetPC & LaptopServerVirtualisasi

Cara Membuat Web Server di Debian 11 : Install Nginx, MariaDB, PHP 8 Terbaru

JANGAN BINGUNG! Begini Cara Install Nginx, PHP 8, MariaDB di Debian 11 Terbaru

Cara Membuat web server sendiri menggunakan Debian 11 akan kita bahas pada artikel kali ini. Sebelumnya sudah kita bahas Cara Install Nginx Ubuntu Beserta PHP 8 dan MariaDB Terbaru lengkap dengan Video Tutorial nya.

Kali ini kita akan menggunakan Linux Debian 11 terbaru untuk membuat web server menggunakan Nginx, php 8 dan MariaDB versi terbaru.

Disini saya akan praktekkan langsung menggunakan Debian 11 yang diinstall pada Virtual Private Server (VPS) yang punya IP Public, sehingga bisa sekalian kita gunakan untuk mem-publish web dengan platform Wordpress ke Internet.

Namun jika teman-teman tidak menggunakan VPS, misal hanya menggunakan PC lokal ataupun menggunakan Virtual Machine (VM) VirtualBox pun tidak masalah. Karena tutorial ini juga bisa digunakan secara lokal, namun tidak bisa melakukan publish web ke Internet, hanya intranet saja.

Pada kesempatan kali ini saya akan menggunakan Debian Server 11 yang diinstall pada VPS Vultr. Jika teman-teman mau mencoba juga silakan bisa daftar gratis dan bisa dapat saldo $100 GRATIS dari Vultr. Klik tombol berikut untuk daftar :

DAFTAR DISINI GRATIS $100

 

Karena saya menggunakan Debian Server, maka pada console terminal nya sudah pasti login sebagai root (#) sehingga tidak perlu lagi menggunakan command sudo.

Jika teman-teman menggunakan Debian Desktop, silakan gunakan user root untuk melakukan eksekusi command pada artikel ini.

Untuk masuk ke mode Super User (root) gunakan perintah :

sudo -s

Kemudian masukkan password Debian nya. Pastikan tanda $ sudah berubah menjadi tanda # pada terminal nya.

Cara Install Web Server Nginx Terbaru di Debian

Web server yang akan kita gunakan kali ini adalah Nginx yang punya performa lebih baik daripada Apache. Sehingga website yang kita buat nanti bisa dijalankan dengan lebih cepat.

Untuk install Nginx Debian bisa langsung install dari repository bawaan nya Debian, tetapi menggunakan versi Nginx lama. Jika ingin menggunakan Nginx versi baru maka kita harus menambahkan dulu repository nya Nginx.

Install Nginx Versi Lama dari Repository Debian

Untuk install nginx versi lama, buka terminal pada Debian nya, ketikkan perintah berikut ini kemudian masukkan password :

apt update
apt install nginx

Jika sudah berhasil, bisa cek versi nginx yang diinstall dengan perintah :

nginx -v

Install Nginx Terbaru dari Repository Nginx

Untuk install Nginx versi terbaru kita harus memasukkan Repository nya Nginx dulu ke sistem Debian nya. Sebelumnya, install dulu aplikasi pendukung nya :

apt update
apt install -y curl gnupg2 ca-certificates lsb-release

Download Nginx repository signing key

curl -fsSL http://nginx.org/keys/nginx_signing.key | gpg --dearmor -o /usr/share/keyrings/nginx-keyring.gpg

Memasukkan Nginx repository ke Debian dengan perintah :

echo "deb [signed-by=/usr/share/keyrings/nginx-keyring.gpg] http://nginx.org/packages/debian `lsb_release -cs` nginx" | sudo tee /etc/apt/sources.list.d/nginx.list
Cara Menambahkan Repository Nginx ke Debian
Menambahkan Repository Nginx ke Debian

Update Repository Debian dan Install Nginx terbaru nya :

apt update
apt install nginx

Jika Nginx sudah berhasil terinstall, jalankan service nginx nya dengan perintah :

service nginx start

Cek status service nginx apakah sudah running

service --status-all

Untuk melihat versi Nginx yang sudah terinstall gunakan perintah ini :

nginx -v
Cek Versi dan Status Nginx Debian
Cek Versi dan Status Nginx Debian

Tes Nginx nya dengan buka website nginx di web browser

http://ipaddress
Tampilan Web Nginx Debian
Tampilan Web Nginx Debian

Jika muncul error ketika akses ke web nginx nya, kemungkinan masih terblokir oleh firewall linux Debian nya. Jika Debian nya menggunakan firewall ufw, gunakan perintah ini untuk membuka akses ke port http dan https :

ufw allow 80
ufw allow 443

Gunakan perintah ini untuk melihat status firewall yang aktif :

ufw status
Cara Membuka Akses Nginx di Firewall UFW Debian
Membuka Akses Nginx di Firewall UFW Debian

Untuk Lokasi folder/direktori website nginx nya ada disini. Jadi nantinya kita akan memasukkan file website kita di dalam folder ini :

/usr/share/nginx/html/

Lokasi file konfigurasi nginx nya ada disini. Ini nantinya akan kita edit untuk integrasi dengan php 8 nya.

/etc/nginx
/etc/nginx/conf.d/

Cara Install MariaDB Terbaru di Debian

Kita lanjut install database MariaDB di Debian. MariaDB ini mirip dengan MySQL dengan penambahan performa yang lebih baik daripada MySQL.

Sama seperti install nginx Debian, MariaDB juga bisa langsung diinstall dari Repository bawaan Debian, namun dengan versi lama.

Untuk menggunakan versi baru kita harus menambahkan repository MariaDB nya dulu.

Install MariaDB Versi Lama dari Repository Debian

Jika ingin langsung install MariaDB dari repository bawaan Debian, silakan masukkan perintah berikut :

apt update
apt install mariadb-server

Install MariaDB Terbaru dari Repository MariaDB

Sebelum memasukkan repository MariaDB ke Debian, kita install dulu aplikasi pendukung nya berikut :

apt update
apt install software-properties-common dirmngr apt-transport-https

Memasukkan repository MariaDB ke Debian dengan perintah berikut :

apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc'
add-apt-repository 'deb [arch=amd64,i386,arm64,ppc64el] https://download.nus.edu.sg/mirror/mariadb/repo/10.6/debian bullseye main'

Tahap Instalasi MariaDB server terbaru dari repository MariaDB

apt update
apt install mariadb-server

Lakukan proses konfigurasi awal database mariadb nya dengan perintah berikut :

mysql_secure_installation

Ikuti langkahnya seperti pada gambar berikut :

Cara Setting Awal MySQL di Linux Debian
Cara Setting Awal MySQL di Linux Debian
root@Debian11:~# 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
haven't set the root password yet, you should just press enter here.

Enter current password for root (enter for none): <-- tekan Enter
OK, successfully used password, moving on...

Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.

You already have your root account protected, so you can safely answer 'n'.

Switch to unix_socket authentication [Y/n] n
... skipping.

You already have your root account protected, so you can safely answer 'n'.

Change the root password? [Y/n] y
New password: <-- Masukkan Password baru
Re-enter new password: <-- Masukkan Password lagi
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] y
... 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] y
- 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] y
... 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!

Jika sudah, kita bisa coba tes login ke MariaDB nya dengan menggunakan perintah :

mysql -u root -p

Masukkan password root nya, yaitu password yang tadi dimasukkan saat mysql setup.

Jika sudah bisa ketik exit untuk keluar dari mode mysql nya.

Cara Install PHP 8.1 Terbaru di Debian

Install Langsung php Versi Lama dari Repository Debian

apt update
apt install php-fpm

Install php Versi 8.1 dari Repository Sury.org

Disini kita akan contohkan install php 8.1 dari repository sury.org dengan terlebih dahulu memasukkan repository nya ke dalam Debian.

Tahap persiapan, download dulu file yang diperlukan dengan perintah sebagai berikut :

wget https://packages.sury.org/php/apt.gpg
apt-key add apt.gpg

Memasukkan repository sury.org ke sistem dengan perintah sebagai berikut :

echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php8.list

Update repository Debian nya dan install php 8.1 dengan perintah berikut :

apt update
apt install php8.1-fpm

Kita juga bisa melakukan instalasi ekstensi php yang diperlukan. Caranya dengan menggunakan contoh perintah sebagai berikut :

apt install php8.1-mysql php8.1-xml php8.1-mbstring

Cara Integrasi Nginx dengan PHP 8.1

Supaya php 8.1 nya bisa digunakan oleh web server nginx, kita perlu lakukan integrasi di file konfigurasi nginx nya.

Edit file konfigurasi global nginx di lokasi berikut ini :

nano /etc/nginx/nginx.conf

Rubah user nginx menjadi www-data

Edit Konfigurasi Nginx user www-data
Edit Konfigurasi Nginx user www-data

Edit file web server nginx nya di lokasi

nano /etc/nginx/conf.d/default.conf

Edit menjadi seperti ini :

Cara Integrasi Konfigurasi Nginx dengan php8.1
Integrasi Konfigurasi Nginx dengan php8.1
location / {
root /usr/share/nginx/html;
index index.php index.html index.htm;
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
# root html;
 fastcgi_pass unix:/run/php/php8.1-fpm.sock;
 fastcgi_index index.php;
 fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
 include fastcgi_params;
}

Cek apakah ada konfigurasi yang salah atau error pada Nginx nya:

nginx -t

Jika terdapat konfigurasi yang error, cek erorr nya ada di line berapa dan perbaiki dengan command nano pada file yang error.

Jika sudah tidak ada konfigurasi yang error, kita lanjut untuk restart service pada nginx nya dengan perintah :

service nginx restart

Cek Apakah Nginx dan PHP 8.1 Sudah Terintegrasi

Buat file index.php dengan ini kode phpinfo menggunakan perintah berikut :

echo "<?php phpinfo(); ?>" | tee /usr/share/nginx/html/index.php

Selanjutnya kita tes apakah semua konfigurasi sudah benar dengan mengakses file index.php tersebut melalui web browser

http://ipaddress/index.php

Jika semua setingan sudah sesuai maka akan muncul tampilan php info yang berisi banyak informasi tentang php nya.

Tampilan phpinfo untuk php8.1 di Nginx
Tampilan phpinfo untuk php8.1 di Nginx

Sampai disini kita sudah bisa melakukan install nginx, php 8.1 dan MariaDB di Linux Debian 11 serta melakukan konfigurasi nginx untuk integrasi dengan php 8.1 nya.

Jika masih ada yang kesulitan untuk Install Nginx, php8.1-fpm dan MariaDB di Debian 11 ini silakan simak tutorial lengkap nya di video berikut ini :

Selanjutnya akan kita bahas bagaimana cara untuk install phpmyadmin di Nginx Debian dan juga membuat website dengan Install Wordpress di Nginx Debian nya di postingan ini :

Cara Membuat Web Hosting Sendiri Gratis Menggunakan VPS Debian 11

teknologiterupdate

Seorang Blogger yang sudah lama berkecimpung dalam dunia Internet dan Blogging, suka menulis berbagai macam artikel khususnya tentang Teknologi.

Related Articles

Back to top button