PHP 8 belum tersedia secara default di repository paket Linux. Biasanya akan menunggu beberapa bulan bahkan tahun agar bisa ditambahkan secara default. Kecuali kita menggunakan Linux yang rolling release.
Nah, buat kamu yang tidak sabar ingin mencoba PHP 8.. khususnya di Linux Ubuntu 20.04 LTS, kamu bisa ikuti tutorial ini untuk menginstalnya.
Mari kita pelajari!
Step 1 - Tambahkan PPA Repository
Saat ini versi default PHP di ubuntu 20.04 adalah PHP 7.4. Jika kita mencoba menginstal PHP8, maka tidak akan bisa, karena di repository tidak ada paket PHP8.
Solusinya kita bisa menggunakan PPA. Salah satu PPA yang menyediakan paket PHP8 adalah Ondrej PPA.
Silahkan ketik perintah berikut untuk Ondrej PPA di list repository-mu.
sudo add-apt-repository ppa:ondrej/php
Jika muncul seperti ini:
Tekan Enter, maka PPA Ondrej akan ditambahkan. Tunggulah sampai prosesnya selesai.
Setelah itu baru kita bisa lanjut ke:
Step 2 - Instalasi PHP 8
Nah untuk menginstal PHP, kita bisa ketik perintah:
sudo apt install php8.0
Jika tidak bisa, coba:
sudo apt install php8.1
Untuk pengguna Fedora 36 ke atas, PHP sudah secara defaul pakai versi 8. Jadi bisa diinstal dengan perintah berikut:
sudo dnf install php
Setelah itu, tunggulah sampai proses instalasi selesai:
Setelah itu, ketik perintha:
php -v
Untuk memeriksa versi PHP yang terinstal.
Pada komputer saya, php yang terinstall adalah versi
sudo dnf install php
2.Berikutnya, kita tinggal konfigurasi PHP agar bisa digunakan di web server.
Step 3 - Konfigurasi Web Server
Ada dua web server yang sering digunakan untuk menjalankan PHP, yakni Apache dan Nginx.
Silahkan pilih salah satu saja.
Menggunakan Apache
Jika kita perhatikan saat proses instalasi, ada paket tambahan yang terinstal.. yakni
sudo dnf install php
3.Paket ini merupakan modul PHP untuk Apache.
Jika paket ini tidak terinstal, kita bisa menginstalnya dengan perintah:
sudo apt install libapache2-mod-php8.0
Paket ini wajib diinstal jika kita akan menggunakan Apache web server.
Oke, selanjutnya kita harus menginstal apache web server.
Silahkan ketik perintah berikut:
sudo apt install apache2
Setelah terinstal coba cek status service
sudo dnf install php
4 dengan perintah:sudo service apache2 status
Jika keluar seperti ini:
Artinya, serive
sudo dnf install php
4 sedang berjalan dan webserver sudah bisa digunakan.Sekarang coba buka web browser, lalu buka
sudo dnf install php
6.Hasilnya:
Ini artinya web server apache sudah berjalan dengan benar. Tinggal kita test menjalankan PHP 8 dari sana.
Upgrade PHP 7 ke PHP 8 di Apache
Jika di komputermu sudah terinstal PHP 7 dan ingin menggantinya ke versi PHP 8, maka kita tinggal melakukan disable modul PHP7 lalu mengaktifkan modul PHP8.
Caranya ketik perintah berikut:
sudo a2dismod php7.4
Perintah ini akan melakukan disable modul PHP 7.4, jika kamu menggunakan PHP 7.2, silahkan ganti 7.4 menjadi 7.2.
Setelah itu, kita tinggal enable modul PHP 8 dengan perintah:
sudo a2enmod php8.0
Jika keluar seperti ini:
Artinya, modul PHP 8 berhasil diaktifkan.
Berikutnya kita tinggal restart service apache2 dengan perintah berikut:
sudo apt install php8.0
0Nah, sekarang Apache sudah menggunakan PHP versi 8. Jika kamu ingin kembalikan ke versi 7, tinggal jalankan lagi perintah seperti di atas.
sudo apt install php8.0
1Oke, sekarang mari kita coba..
Sebelumnya, silahkan ubah hak akses folder
sudo dnf install php
7 agar kita bisa menulis file di sana.Gunakan perintah berikut:
sudo apt install php8.0
2Setelah itu, kita akan coba membuat file PHP baru di dalam folder tersebut.
Oh iya, folder
sudo dnf install php
7 merupakan folder yang digunakan oleh Apache untuk menyimpan file web.Ok, sekarang buatlah file baru di dalam folder
sudo dnf install php
9 dengan nama php -v
0 dengan isi sebagai berikut:sudo apt install php8.0
3Setelah itu, buka alamat
php -v
1, maka hasilnya:Mantap 👍 PHP 8 dan Apache sudah terinstal dengan benar.
Menggunakan Nginx
Nginx adalah salah satu web server yang sering digunakan, baik untuk development dan production.
Jika kamu sudah menggunakan Apache, sebenarnya tidak perlu lagi menggunakan Nginx.
Tapi, jika kamu ingin mencobanya..
Silahkan lanjutkan.
Pertama, kita harus Install Nginx dengan perintah berikut:
sudo apt install php8.0
4Ketik
php -v
2 lalu Enter jika keluar seperti ini:Setelah itu, coba ketik perintah:
sudo apt install php8.0
5untuk memeriksa versi Nginx yang tersintal.
Pada komputer saya, terinstal Nginx versi 1.18.0.
Berikutnya coba cek status service Nginx dengan perintah:
sudo apt install php8.0
6Jika keluar seperti ini:
Artinya status web server Nginx sedang aktif. Kita bisa mencobanya dengan membuka
php -v
3 dari web browser.Hasilnya akan seperti ini:
Tapi..
Saat ini nginx masih belum bisa menjalankan PHP. Dia hanya bisa menjalankan HTML saja.
Ini disebabkan karen kita belum menginstal FastCGI.
Oke, sekarang mari kita instal, ketik perintah ini:
sudo apt install php8.0
7Tunggulah sampai prosesnya selesai.
Setelah itu, coba lihat status service
php -v
4 dengan perintah:sudo apt install php8.0
8Hasilnya:
Oke, sekarang service Nginx dan PHP FastCGI sama-sama aktif.
Tinggal satu langkah lagi.
Kita harus konfigurasi Nginx agar dapat menggunakan service dari PHP FastCGI.
Caranya:
Buka file
php -v
5 dengan user root.Kemudian ubah pada bagian
php -v
6 seperti ini:sudo apt install php8.0
9Versi full punya saya seperti ini:
sudo apt install php8.1
0Jika kamu ingin menggunakan PHP 7, maka tinggal ubah saja
php -v
7 menjadi php -v
8.Berikutnya coba test konfigurasi dengan perintah:
sudo apt install php8.1
1Jika tidak ada yang error..
Maka konfigurasinya sudah benar.
Terakhir, silahkan restart service nginx dengan perintah berikut:
sudo apt install php8.1
2Selesai!
Sekarang kita bisa mencobanya.
Buatlah file baru di dalam folder
sudo dnf install php
7 dengan nama php -v
0 dan isi filenya seperti ini:sudo apt install php8.0
3Setelah itu, buka web browser dan arahkan ke
php -v
1.Maka hasilnya:
Mantap!
Sekarang PHP 8 sudah menggunakan web server Nginx dengan FastCGI.
PHP 8 Debug Mode di Apache
Jika kita ingin menggunakan Apache sebagai development Server, maka pesan error PHP harus diaktifkan.
Jika tidak, maka server akan merespon dengan HTTP ERROR 500.
Contohnya seperti ini:
Jika di server production, ini tidak masalah. Tapi jika kita pakai untuk development, maka ini akan jadi masalah. Soalnya kita tidak bisa tau pesan error dari programnya.
Nah untuk mengatasi ini, kita harus mengaktifkan debug mode untuk PHP 8.
Silahkan buka file
sudo apt install libapache2-mod-php8.0
2 sebagai user root, kemudian ubah isinya menjadi seperti ini:sudo apt install php8.1
4Perhatikan versi PHP yang kamu gunakan:
- PHP 8.0 maka ubah
2sudo apt install libapache2-mod-php8.0
- PHP 8.1 maka ubah di
4sudo apt install libapache2-mod-php8.0
Oke, sekarang kita sudah mengubahnya.
Simpan, kemudian restart service apache2 dengan perintah:
sudo apt install php8.0
0Setelah itu, coba buka kembali script atau halaman php yang error.
Maka hasilnya:
Dengan demikian, kita sudah bisa menggunakan webserver Apache2 untuk development server.
PHP 8 dan MySQL
Jika kita ingin menggunakan PHP 8 dengan MySQL, maka ekstension
sudo apt install libapache2-mod-php8.0
5 harus diinstal.Jika tidak, maka akan terjadi error serpti ini:
Error ini artinya, PHP gagal menemukan fungsi
sudo apt install libapache2-mod-php8.0
6 karena kita belum menginstal ekstension mysql.Kita bisa menginstal ekstension MySQL untuk PHP 8 dengan perintah berikut:
sudo apt install php8.1
6Atau untuk PHP 8.1:
sudo apt install php8.1
7Setelah itu, jangan lupa untuk restart service apache2 dengan perintah:
sudo apt install php8.0
0Dengan demikian kita sudah bisa menggunakan MySQL di PHP 8.
Phpmyadmin untuk PHP 8
Jika sebelumnya kamu menggunakan Phpmyadmin dan menggunakan PHP 8 untuk menjalankannya, maka akan terjadi error seperti ini:
Ini disebabkan karena ada beberapa ekstension yang belum terinstal, seperti
sudo apt install libapache2-mod-php8.0
7, sudo apt install libapache2-mod-php8.0
8, sudo apt install libapache2-mod-php8.0
9, dll.Untuk menginstal semua ekstension yang dibutuhkan, silahkan ketik perintah berikut:
PHP 8.0:
sudo apt install php8.1
9PHP 8.1:
sudo dnf install php
0Setelah itu, jangan lupa restart service apache2 dengan perintah:
sudo apt install php8.0
0Maka sekarang kita akan bisa membuka PHPmyadmin dengan PHP 8.
Apa Selanjutnya?
Pada tutoral ini, kita sudah belajar cara menginstal PHP 8 dan melakukan upgrade dari PHP 7 ke PHP 8.
Untuk web server, silahkan pilih salah satu. Saya lebih prefer Apache untuk development dan untuk production lebih sering menggunakan Nginx.
Selanjutnya kita bisa coba fitur terbaru di PHP 8 dan juga bisa coba belajar Laravel 9.
Jika ada kendala, silahkan tanyakan di komentar. Jangan lupa lampirkan screenshot agar gampang dijawab.