Indonesia Website Awards

Cara install LAMP (Linux, Apache, MySQL, PHP) di CentOS 9 Stream

CentOS memiliki keunggulan fitur, stabilitas dan keamanan tingkat perusahaan; sama seperti Rocky Linux, maupun Oracle Linux.

lamp stack centos9

CentOS memiliki keunggulan fitur, stabilitas dan keamanan tingkat perusahaan; sama seperti Rocky Linux, maupun Oracle Linux karena ketiganya berasal dari kode sumber yang sama yaitu RHEL (Red Hat Enterprise Linux).

CentOS tidak kalah populer dari Debian maupun ubuntu yang banyak digunakan sebagai OS untuk server, termasuk situs ini yang servernya menggunakan Ubuntu 22.04. Menyiapkan lingkungan LAMP cukup mudah, dengan mengikuti tutorial ini. Anda akan belajar bagaimana membuat stack LAMP (Linux, Apache, MySQL, dan PHP).

Perbarui basis data paket aplikasi di sistem

Sebelum memulai, kita perlu memperbarui aplikasi yang ada di sistem, hal ini untuk menyelaraskan versi yang ada di basis data lokal dan di repositori. Jika ada pembaruan aplikasi, maka sistem akan memberitahu bahwa terdapat versi baru untuk paket aplikasi tertentu, misalnya wget, curl atau php.

sudo dnf update -y
Info
Opsi “-y” digunakan untuk mengeksekusi perintah dengan melewati pertanyaan, biasanya pertanyaan tersebut muncul pada saat instalasi paket aplikasi atau memperbarui basis data pada sistem.

Instalasi Apache/httpd

Apache web server adalah aplikasi yang akan kita gunakan untuk melayani permintaan HTTP dari klien. Pada distribusi turunan RHEL seperti CentOS, Apache dikenal sebagai httpd, sedangkan pada turunan debian namanya tetap sama.

sudo dnf install httpd -y

Setelah instalasi, aktifkan dan mulai service Apache:

sudo systemctl enable httpd
sudo systemctl start httpd

Pastikan firewall mengizinkan lalu lintas HTTP (80) dan HTTPS (443):

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

Firewall ini bersifat opsional, pengguna AWS hanya perlu melakukan sedikit konfigurasi di Security Group tanpa harus menggunakan firewall di instance.

6cf20a35
AWS security group, berlaku sebagai firewall. Image credit: AWS/MauCariApa.com
7dd764ff
Entri pada security group. Image credit: AWS/MauCariApa.com

Instalasi MySQL

MySQL adalah sistem manajemen basis data relasional (RDBMS) sumber terbuka yang menggunakan bahasa kueri terstruktur (SQL). Alternatifnya adalah MariaDB yang lebih cepat dibandingkan MySQL. Untuk menginstal MariaDB, gunakan perintah berikut:

sudo dnf install mariadb-server mariadb -y

Sama seperti httpd, aktifnya service sebelum menggunakan aplikasi.

sudo systemctl enable mariadb
sudo systemctl start mariadb

Amankan instalasi MariaDB Anda dengan menjalankan skrip keamanan:

sudo mysql_secure_installation

Ikuti dan selesaikan semua perintah yang tampil di layar.

Recommended:  Lacak Pengguna dan Pelajari Lalu Lintas di Google Analytics dengan MonsterInsights

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.

Masukkan kata sandi (jika ada), tekan Enter jika tidak ada

Enter current password for root (enter for none):

Beralih ke ynix_socket authentication? Ketik Y jika ingin beralih atau N jika tidak akan menggunakan unix_socket.

Switch to unix_socket authentication [Y/n]

Ubah kata sandi untuk pengguna root? Ketik Y jika ingin mengubah atau N jika tidak

Change the root password? [Y/n]

Hapus pengguna anonim? Sangat disarankan untuk menghapus pengguna anonim demi meningkatkan keamanan database

Remove anonymous users? [Y/n]

Larang masuk ke pengguna root secara remote? Ketik Y jika ingin membatasi masuk akun root

Disallow root login remotely? [Y/n]

Hapus database test dan aksesnya? Disarankan untuk menghapus database ini karena dapat digunakan sebagai celah untuk masuk ke database kita.

Remove test database and access to it? [Y/n]

Muat ulang tabel? Ketik Y untuk memuat ulang tabel

Reload privilege tables now? [Y/n]

Itulah beberapa pertanyaan yang harus diselesaikan sebelum menggunakan MySQL maupun MariaDB.

Instalasi PHP

PHP adalah bahasa skrip sisi server yang digunakan untuk pengembangan web. Karena CentOS 9 mungkin tidak memiliki versi PHP terbaru di repositori defaultnya, Anda dapat memilih untuk mengaktifkan repositori Remi untuk versi PHP yang lebih baru:

sudo dnf install -y dnf-utils http://rpms.remirepo.net/enterprise/remi-release-9.rpm
sudo dnf module enable php:remi-8.0

Sekarang, instal PHP bersama dengan beberapa ekstensi umum:

sudo dnf install -y php php-mysqlnd php-fpm php-opcache php-gd php-xml php-mbstring

Jangan lupa memuat ulang Apache untuk menerapkan perubahan:

sudo systemctl restart httpd

Ujicoba

Untuk mengecek apakah LAMP kita berfungsi dengan baik atau tidak, buat file PHP sederhana padaroot dokumen httpd:

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/phpinfo.php

Sekarang, buka http://ip_server_anda/phpinfo.php di browser web, layar akan menampilkan halaman informasi PHP, yang menunjukkan bahwa stack LAMP berjalan dengan baik.

6df165d3
0ea54dfb
48056b5d

Penutup

Setelah LAMP terinstal dan berjalan dengan baik, kita dapat membuat proyek seperti aplikasi web, blog seperti WordPress atau Ghost, file manager dan lain sebagainya.

Recommended:  Cara instalasi Homebrew di MacOS

Itulah langkah-langkah sederhana untuk instalasi LAMP di CentOS 9 Stream, pada dasarnya tutorial ini dapat diterapkan pada distribusi seperti Rocky Linux, AlmaLinux, Oracle, openEuler dan distribusi turunan RHEL lainnya.