Pendahuluan
Apache, PostgreSQL, dan PHP adalah kombinasi perangkat lunak populer untuk mengembangkan aplikasi web dinamis dan andal. Apache berfungsi sebagai web server, PostgreSQL sebagai sistem manajemen basis data (RDBMS) yang powerful dan open-source, dan PHP sebagai bahasa pemrograman server-side yang fleksibel. Artikel ini akan membimbing Anda langkah demi langkah menginstal Apache, PostgreSQL, dan PHP versi 8.3 di server Ubuntu 22.04.
Prasyarat
-
VPS atau server dengan Ubuntu 22.04
-
Akses root atau sudo
-
Akses internet aktif
Install Apache
- Terhubung dengan VPS
Pastikan anda sudah terhubung ke VPS dan login sebagai root - Update Sistem
Selalu lakukan update paket sistem sebelum melakukan instalasi dengan menggunakan command line berikut
apt update -y && apt upgrade -y
- Install Apache
Setelah Update sistem selesai, anda bisa langsung menginstall apache dengan menggunakan command line berikut
apt install apache2 -y
- Setup Firewall
Anda bisa melihat aplikasi apa saja yang ada di di dalam ufw dan sebelum mengaktifkan Apache, anda harus memberikan akses untuk Apache dan pastikan pastikan port HTTP dan HTTPS dibuka dengan menggunakan Command line berikut
ufw app list ufw allow apache ufw reload
Anda dapat melihat daftar HTTP yang diizinkan oleh ufw dengan menggunakan command line berikut:
ufw status
Terlihat bahwa Status Active dan Apache mendapatkan akses. - Check Status Apache
Setelah melakukan setup Firewall, Apache perlu dijalan kan dengan command line berikut:
systemctl start apache2
agar Apache dapat berjalan otomatis saat boot jalankan command line berikut
systemctl enable apache2
untuk mengaktifkan Apache aktif anda bisa menjalankan command line berikut
systemctl status apache2
- Selesai
Buka browser dan ketik IP VPS anda, jika berhasil, akan muncul halaman default Apache seperti gambar
Install PostgreSQL
- Update Sistem
sudo apt update && sudo apt upgrade -y
- Menambahkan Repositori PostgreSQL
Ubuntu 22.04 sudah menyediakan PostgreSQL di repository resminya, anda perlu mengimpor kunci GPG dan menambahkan repositori PostgreSQL.
curl -fsSL https://www.postgresql.org/media/keys/ACCC4CF8.asc|sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/postgresql.gpg echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" |sudo tee /etc/apt/sources.list.d/pgdg.list
- Install PostgreSQL
sudo apt install postgresql postgresql-contrib -y
- Cek Status PostgreSQL
sudo systemctl status postgresql
- Gunakan password untuk user PostgreSQL
Gunakan password acak dan panjang untuk setiap user, terutama postgres. - Batasi Akses Network
Secara bawaan, PostgreSQL hanya menerima koneksi dari antarmuka lokal (localhost). Untuk mengizinkan akses jarak jauh, buka file /etc/postgresql/14/main/postgresql.conf, lalu ubah baris #listen_addresses = 'localhost' dengan menghapus tanda komentar (#) dan sesuaikan nilainya sebagaimana pada bagian CONNECTIONS and AUTHENTICATION. -
Langkah selanjutnya adalah mengonfigurasi server agar menerima koneksi dari jarak jauh. Hal ini dilakukan dengan mengedit file /etc/postgresql/14/main/pg_hba.conf. Silakan buka file tersebut untuk mulai mengatur akses.
Di bagian ini, Anda dapat mengatur akses ke satu atau semua basis data serta menentukan pengguna mana yang diizinkan mengaksesnya melalui antarmuka tertentu. Untuk menggunakan autentikasi berbasis kata sandi, pilih metode scram-sha-256. Berikut ini beberapa contoh konfigurasi yang dapat Anda gunakan.Setelah selesai tekan Ctrl+x dan Y
Install PHP
- Tambah PHP dari Repository dari Sury/Ondrej
sudo apt install software-properties-common -y sudo add-apt-repository ppa:ondrej/php -y sudo apt update
- Install PHP 8.3 dan Modul Pendukung
sudo apt install php8.3 libapache2-mod-php8.3 php8.3-pgsql php8.3-cli php8.3-common php8.3-curl php8.3-mbstring php8.3-xml php8.3-zip -y
- Cek Versi PHP
php -v
- Konfigurasi Àpache untuk Menjalankan PHP
Pastikan module PHP diaktifkan
sudo a2enmod php8.3 sudo systemctl restart apache2
- Uji PHP
Buat file info.php
echo "" | sudo tee /var/www/html/info.php
Akses di browser http://ip.vps.anda/info.php
- Scroll kebawah pastikan PostgreSQL anda sudah terhubung dengan PHP
- Atau anda bisa cek lewat ubuntu dengan menggunakan command line berikut
php -m | grep "pgsql"
Maka akan menampilkan
Mengakses Database di PostgreSQL
- Akses PostgreSQL
sudo -i -u postgres
-
Anda akan masuk ke shell PostgreSQL.
- Buat user dan database
CREATE USER nama_user WITH PASSWORD 'password_user'; CREATE DATABASE nama_db OWNER nama_user; GRANT ALL PRIVILEGES ON DATABASE nama_db TO nama_user; \q
Kesimpulan
Kombinasi ini sangat ideal untuk membangun aplikasi web dinamis dan berskala besar. Dengan Apache sebagai web server, PostgreSQL sebagai basis data, dan PHP 8.3 sebagai pemroses skrip backend, Anda kini siap untuk mengembangkan atau menghosting aplikasi web berbasis teknologi open source.