Menginstal Beberapa Versi PHP dalam Satu VM untuk Pengembangan Web yang Lebih Fleksibel

How can we help?
< All Topics
Print

Menginstal Beberapa Versi PHP dalam Satu VM untuk Pengembangan Web yang Lebih Fleksibel

Saat menginstal versi PHP yang diinginkan, sering kali kita menemui kendala jika versi PHP yang ingin diinstal tidak kompatibel dengan versi PHP yang tersedia di repositori default Ubuntu. Misalnya, repositori Ubuntu 20.04 hanya menyertakan PHP 7.4, sementara repositori Ubuntu 22.04 hanya menyertakan PHP 8.1.

Dalam situasi seperti itu, kita perlu mencari sumber alternatif untuk mendapatkan paket instalasi PHP yang diinginkan. Salah satu opsi yang dapat digunakan adalah dengan menggunakan PPA (Personal Package Archive). PPA adalah tempat di mana pengembang perangkat lunak menyediakan paket mereka untuk diunduh.

Pada Ubuntu 22.04, repository default (yang berisi perpustakaan utama) tidak menyertakan paket PHP selain versi 8.1. Oleh karena itu, jika kita mencoba mencari paket PHP versi lain di repository default, kita tidak akan menemukannya.

Dengan menggunakan PPA (Personal Package Archive) dari Ondřej Surý, seorang pengembang Debian, kita dapat mengakses versi-versi PHP yang berbeda dan menginstalnya di sistem Ubuntu. PPA ini memberikan akses ke versi PHP yang tidak tersedia di repositori default Ubuntu. Dengan begitu, kita dapat memilih dan menginstal versi PHP yang sesuai dengan kebutuhan kita.

Berikut adalah tutorial untuk menginstal PHP5.6, PHP7.4, dan PHP8.0 di dalam satu VM dengan OS Ubuntu yang menggunakan webserver NGINX. Tutorial ini juga akan memberikan langkah-langkah untuk mengganti-ganti versi PHP sesuai dengan kebutuhan Anda.

Pra-instalasi

Langkah pertama, tambahkan PPA Ondřej Surý untuk PHP ke sistem Ubuntu Anda dengan menjalankan perintah berikut.

# sudo add-apt-repository ppa:ondrej/php

Kemudian perbarui daftar paket pada VM seperti biasa.

# sudo apt update

Install Beberapa Versi PHP Melalui PPA

Pertama, kita coba install PHP8.0 pada VM Ubuntu ini. Jalankan perintah berikut untuk menginstal PHP8.0, PHP8.0 FPM, serta beberapa ekstensi PHP8.0 yang umum digunakan dalam pengembangan aplikasi web.

# sudo apt install php8.0 php8.0-fpm php8.0-mysql php8.0-mbstring php8.0-xml php8.0-gd php8.0-curl

Untuk beberapa ekstensi lain yang tersedia di dalam PHP8.0, bisa Anda cek dengan perintah sudo apt install php8.0 kemudian tekan tombol Tab dua kali.

Kemudian kita coba install PHP7.4 pada VM Ubuntu ini. Jalankan perintah berikut untuk install PHP7.4 serta beberapa ekstensi umum dari PHP7.4

# sudo apt install php7.4 php7.4-fpm php7.4-mysql php7.4-mbstring php7.4-xml php7.4-gd php7.4-curl

Selanjutnya kita coba install PHP5.6 pada VM Ubuntu ini. Jalankan perintah berikut untuk install PHP5.6 serta beberapa ekstensi umum dari PHP5.6

# sudo apt install php5.6 php5.6-fpm php5.6-mysql php5.6-mbstring php5.6-xml php5.6-gd php5.6-curl

Untuk install versi PHP lain, Anda dapat melakukan hal yang serupa. Cukup gantikan nomor versi dalam perintahnya.

Mengganti versi PHP dalam blok server NGINX

Sangat mudah untuk mengganti versi PHP di blok server NGINX. Lihat daftar PHP-FPM socket files (.sock) di dalam VM kita dengan perintah berikut:

# ls /run/php/

Dapat terlihat daftar lengkap PHP beserta versinya yang telah kita pasang sebelumnya.

Sekarang edit konfigurasi blok server NGINX kita. Secara umum, file konfigurasi blok server NGINX dapat ditemukan di direktori default yaitu /etc/nginx/sites-available/default. Namun di sini saya sudah menggunakan lokasi yang kustom, yaitu /etc/nginx/sites-available/cloudforindonesia

Versi PHP yang digunakan oleh NGINX ditentukan pada baris berikut:

Untuk mengubah versi PHP yang diinginkan, kita perlu mengganti baris tersebut dengan versi PHP-FPM socket files (.sock) yang telah kita pasang sebelumnya.

Jika sudah, simpan dan tutup editor file. Kemudian reload service NGINX untuk menjalankan perubahan.

# sudo systemctl reload nginx


Pengetesan versi PHP yang digunakan oleh blok server NGINX

Ada beberapa cara untuk melakukan pengetesan versi PHP mana yang digunakan oleh blok server NGINX, yang paling simpel adalah dengan membuat file baru info.php di dalam direktori website kita.

# sudo nano /var/www/cloudforindonesia/galerifashion/info.php

Masukkan kode PHP berikut di dalam file

<?php phpinfo(); ?>

Simpan dan tutup editor file. Kemudian akses file tersebut pada browser.


Berikut adalah contoh situs web saya yang masih menggunakan PHP5.6 dan masih bisa beroperasi dengan baik.

Atur versi PHP default secara global

Dalam konteks mengatur versi PHP di blok server NGINX, Anda akan mengkonfigurasi server web Nginx untuk menggunakan versi PHP yang diinginkan. Ini berarti webserver Nginx hanya akan menggunakan versi PHP yang ditentukan dalam konfigurasi blok server tersebut, sedangkan sistem operasi secara keseluruhan mungkin tetap menggunakan versi PHP lain sebagai versi defaultnya.

Di atas, kita sudah mengatur versi PHP untuk satu webserver NGINX, jika kita ingin mengubah versi PHP yang digunakan oleh seluruh sistem operasi, Anda dapat menggunakan perintah berikut.

# sudo update-alternatives –config php

Tentukan versi PHP yang kita ingin set menjadi global.

Jika sudah, kita bisa cek versi PHP yang sudah kita pilih tersebut.

# php –version

Kesimpulan

Dalam tutorial ini, kita telah berhasil menginstal multiple PHP di dalam satu VM Cloud Raya. Dengan menggunakan langkah-langkah yang telah dijelaskan, Anda sekarang dapat dengan mudah menjalankan beberapa versi PHP di lingkungan yang sama. Semoga tutorial ini bermanfaat bagi Anda dalam mengembangkan dan mengelola proyek PHP dengan lebih fleksibel dan efisien.

Kunjungi halaman Knowledge Base Cloud Raya untuk tutorial menarik lainnya seputar aktifitas di dalam cloud computing. Atau, jika Anda lebih suka menyimak melalui video, silakan mengunjungi channel Youtube kami.

Table of Contents

Leave a Reply

Your email address will not be published. Required fields are marked *

Post comment

Ready, Set, Cloud

Ready, Set, Cloud