Ragilt.Net

Komputer, Jaringan, Linux & Info Terkini

Membangun Webserver Handal Dengan Ubuntu Nginx,PHP,MySQL

Hai kamu yang lagi pengen bikin web server sendiri — mungkin buat naro project, belajar, atau sekadar iseng-iseng jadi sysadmin dadakan — tenang aja, gue bakal bimbing kamu langkah demi langkah pake bahasa yang nggak kaku, nggak njelimet, dan beneran bisa diikuti walau kamu baru pertama kali pegang terminal.

Kita bakal pake:

  • Ubuntu Server (versi LTS terbaru, misal 22.04)
  • Nginx (baca: “engine-x”) — web server ringan dan kenceng
  • PHP — biar web kamu bisa jalanin script dinamis
  • phpMyAdmin — buat ngatur database MySQL/MariaDB lewat browser, biar gak pusing ngetik SQL manual

💡 Persiapan Awal

Pastiin dulu kamu punya:

  • Akses ke server Ubuntu (bisa VPS, cloud, atau mesin lokal pake VirtualBox/WSL)
  • Koneksi internet (ya iyalah)
  • Kopi atau teh (ini wajib, biar semangat)

Login ke server kamu lewat SSH atau langsung kalo pake desktop.


🚀 Langkah 1: Update Sistem

Jangan lupa update dulu biar semua paket terbaru dan aman dari bug.

sudo apt update && sudo apt upgrade -y

Tunggu sampe selesai. Sambil nunggu, kamu bisa cek notif IG dulu — gapapa, gue ngerti.


🌐 Langkah 2: Install Nginx

Nginx tuh web server yang simpel, cepet, dan gak rakus RAM. Cocok buat pemula.

sudo apt install nginx -y

Setelah install, cek apakah Nginx udah jalan:

sudo systemctl status nginx

Harusnya keliatan tulisan active (running). Kalo belum, nyalain manual:

sudo systemctl start nginx
sudo systemctl enable nginx  # biar nyala otomatis pas reboot

Coba buka browser, ketik IP server kamu. Harusnya keliatan halaman default Nginx kayak “Welcome to nginx!”. Kalo iya, selamat — kamu udah punya web server! 🎉


🐘 Langkah 3: Install MariaDB (atau MySQL)

phpMyAdmin butuh database, jadi kita install MariaDB — versi open-source dari MySQL, lebih ringan dan tetep powerful.

sudo apt install mariadb-server mariadb-client -y

Setelah install, amankan instalasi MariaDB biar gak gampang di-hack:

sudo mysql_secure_installation

Ikutin petunjuknya:

  • Tekan Enter aja kalo ditanya password root (karena default-nya kosong)
  • Lalu set password root (buat yang kuat tapi bisa kamu inget)
  • Jawab Y untuk semua pertanyaan (hapus user anonim, disable remote root, hapus test db, reload privilege)

🐘 Langkah 4: Install PHP + Modul yang Dibutuhin

PHP versi terbaru biasanya udah tersedia di repo Ubuntu. Kita install PHP + modul buat Nginx dan MySQL.

sudo apt install php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip -y

Penjelasan singkat:

  • php-fpm — biar PHP bisa jalan di Nginx
  • php-mysql — konek ke database
  • php-curl, gd, mbstring, dll — modul pendukung buat aplikasi kayak WordPress, Laravel, dll

Cek versi PHP biar yakin:

php -v

⚙️ Langkah 5: Konfigurasi Nginx + PHP

Sekarang kita atur Nginx biar bisa jalanin file PHP.

Buka file konfigurasi default:

sudo nano /etc/nginx/sites-available/default

Cari bagian yang ada index index.html ..., tambahin index.php di depan:

index index.php index.html index.htm;

Lalu cari blok yang mulai dari:

# pass PHP scripts to FastCGI server

Hapus tanda # di depan baris-baris ini (jadi uncomment):

location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php8.1-fpm.sock;  # sesuaikan versi PHP kamu!
}

💡 Catatan: Cek versi PHP kamu pake ls /run/php/ — kalo pake PHP 8.2, ganti jadi php8.2-fpm.sock.

Simpan file (Ctrl+O → Enter → Ctrl+X).

Test konfigurasi Nginx:

sudo nginx -t

Kalo muncul syntax is ok dan test is successful, berarti aman. Restart Nginx:

sudo systemctl reload nginx

🧪 Cek PHP Jalan atau Nggak

Bikin file cek PHP:

sudo nano /var/www/html/info.php

Isi dengan:

<?php
phpinfo();
?>

Simpan, lalu buka browser → http://[IP-SERVER]/info.php

Harusnya keliatan halaman biru-putih yang nampilin semua info PHP. Kalo iya, berarti PHP udah nyambung sama Nginx. Keren!

Jangan lupa hapus file ini nanti buat keamanan:
sudo rm /var/www/html/info.php


🖥️ Langkah 6: Install phpMyAdmin

Nah, ini bagian yang sering bikin pusing — tapi tenang, kita bikin simpel.

Install phpMyAdmin:

sudo apt install phpmyadmin -y

Pas proses install:

  • Pilih Nginx (pake spasi buat centang, enter buat lanjut)
  • Pilih Yes saat ditanya konfigurasi database dengan dbconfig-common
  • Masukin password buat phpMyAdmin (boleh beda dari root MariaDB)

Secara default, phpMyAdmin bakal diinstall di /usr/share/phpmyadmin. Kita perlu bikin symlink ke folder web biar bisa diakses via browser.

sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

Coba akses: http://[IP-SERVER]/phpmyadmin

Login pake:

  • Username: root
  • Password: password MariaDB yang kamu set tadi

Kalo bisa login — SELAMAT! Kamu resmi punya web server + database admin panel. 🥳


🔐 Bonus: Amankan phpMyAdmin (Biarpun Cuma Buat Belajar)

Biar gak gampang dijebol, kita tambahin basic auth.

Bikin user + password:

sudo htpasswd -c /etc/nginx/.htpasswd adminphp

Masukin password (2x). Nanti file .htpasswd bakal dibuat.

Lalu edit konfigurasi Nginx:

sudo nano /etc/nginx/sites-available/default

Tambahin di dalam blok server (sebelum location):

location /phpmyadmin {
    auth_basic "Restricted Access";
    auth_basic_user_file /etc/nginx/.htpasswd;
}

Test & reload:

sudo nginx -t
sudo systemctl reload nginx

Sekarang, pas buka /phpmyadmin, bakal muncul pop-up minta username (adminphp) dan password yang tadi kamu set.


✅ Selesai!

Sekarang kamu punya:

  • Web server pake Nginx
  • PHP yang jalan mulus
  • Database MariaDB
  • Panel admin phpMyAdmin yang aman

Bisa buat naro WordPress, Laravel, CodeIgniter, atau project pribadi kamu. Tinggal upload file ke /var/www/html/ dan jalanin.


💬 Tips Buat Pemula

  • Kalo error, baca pesan errornya pelan-pelan — biasanya solusinya ada di situ.
  • Jangan takut coba-coba, server kamu, kamu yang pegang kendali.
  • Backup konfigurasi penting sebelum diutak-atik.
  • Kalo mentok, coba Googling — komunitas Ubuntu & Nginx besar banget, pasti ada yang pernah ngalamin.

Penutup

Gue sengaja nulis tutorial ini kayak lagi ngobrol sama temen — karena belajar server itu seru, bukan buat ditakutin. Kalo kamu bisa sampe sini, berarti kamu lebih jago dari 70% orang yang cuma bisa nanya “gimana caranya?” tapi gak pernah nyoba.

Semangat terus, jangan berhenti belajar. Next project? Coba deploy aplikasi beneran — siapa tau jadi startup unicorn! 🦄

Kalo ada yang bingung, komen aja — gue bales pake hati (dan kopi).

Salam,
— Sysadmin Dadakan yang Dulu Juga Pemula —

Author

5 1 vote
Article Rating
Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x