Baru-baru ini saya membahas berbagai topik yang berkaitan dengan konfigurasi berbagai server web dan pengoperasian aplikasi PHP seperti WordPress. Server web, seperti OpenLiteSpeed, memungkinkan Anda mengubah versi menggunakan Konsol WebAdmin, tetapi jika Anda menggunakan Apache, berikut cara mengganti versi PHP di Linux.
Versi PHP
Bagaimana cara memeriksa versi PHP di Linux?
Pertama, tentukan versi PHP apa yang saat ini diinstal dan dikonfigurasi. Saya menggunakan Debian 11 untuk demonstrasi ini. Semua instruksi yang diberikan dalam artikel ini akan beroperasi tanpa hambatan pada distribusi Linux apa pun.
Satu-satunya hal yang perlu diingat bahwa versi yang Anda coba alihkan telah diinstal dengan benar.
php -v
Menginstal versi PHP tertentu
Ada panduan mendalam tentang LinuxAndUbuntu tentang cara menginstal PHP 8.x pada distribusi Linux berbasis Debian dan Ubuntu. Jika Anda menginstal versi sebelumnya seperti PHP 7.4, tidak perlu menambahkan repositori apa pun.
sudo apt install php7.4
Ubah versi PHP
Setelah Anda menginstal beberapa versi PHP, kita dapat menggunakan skrip a2dismod dan a2enmod untuk menonaktifkan versi PHP dan mengaktifkan versi PHP lainnya. Kedua skrip ini dapat mengaktifkan dan menonaktifkan modul apache.
Nonaktifkan versi PHP saat ini
Dengan asumsi Anda memiliki PHP 8.1 yang saat ini ditetapkan sebagai versi PHP default, berikut adalah cara menonaktifkannya –
sudo a2dismod php8.1
Aktifkan versi PHP baru
Sekarang kita dapat beralih ke versi PHP yang diinstal menggunakan a2enmod –
sudo a2enmod php7.4
Jangan lupa untuk me-restart server apache setelah mengganti versi PHP.
sudo service apache2 restart
Kesalahan umum dengan a2enmod
Beberapa pengguna mungkin mendapatkan kesalahan 'bash:a2dismod:command not found'.
[email protected]:~$ a2dismod php8.1 bash: a2dismod: command not found
Sebagian besar kesalahan terjadi saat menjalankan perintah tanpa sudo atau root.
Berikut adalah output yang Anda dapatkan setelah eksekusi perintah berhasil –
[email protected]:~$ sudo a2dismod php8.1 Module php8.1 disabled. To activate the new configuration, you need to run: systemctl restart apache2
Sama halnya dengan a2enmod. Jalankan dengan sudo atau sebagai pengguna root.
Kesalahan lain yang mungkin dialami pengguna adalah “ERROR:Module php7.3 is not existing!”.
[email protected]:~$ sudo a2enmod php7.3 ERROR: Module php7.3 does not exist!
Kesalahan ini berarti versi PHP yang coba diaktifkan pengguna tidak diinstal. Dalam hal ini, php7.3 tidak diinstal.
Berikut adalah bagaimana eksekusi a2enmod yang berhasil terlihat –
[email protected]:~$ sudo a2enmod php7.4 Considering dependency mpm_prefork for php7.4: Considering conflict mpm_event for mpm_prefork: Considering conflict mpm_worker for mpm_prefork: Module mpm_prefork already enabled Considering conflict php5 for php7.4: Enabling module php7.4. To activate the new configuration, you need to run: systemctl restart apache2