(2024.1) PHP 8.1 Upgrade
Overview
Setup
Remove libapache2-mod-php7.4
Install PHP 8.1
Install php-fpm 7.4 and 8.1
Enable php-fpm 7.4 and 8.1
Update Virtual Hosts to use the appropriate PHP version
Restart Apache
Setup
Install Repository
In order to complete this upgrade, a repository (repo) with all of the dependencies must be installed. Listed below are the suggested repos for each operating system.
How to Install:
// *************
// Ubuntu 20
// *************
sudo add-apt-repository ppa:ondrej/php
Remove libapache2-mod-php7.4
Why Remove?
The mod only allows a single PHP version running on the server and will interfere with php-fpm.
How to Remove:
// *************
// Ubuntu 20
// *************
sudo apt remove libapache2-mod-php7.4
Install and Enable PHP 8.1, PHP_FPM 8.1, and PHP_FPM 7.4
First install the services to handle each PHP version. Then, Apache needs the support for multiple version enabled.
How to Install and Enable:
// *************
// Ubuntu 20
// *************
sudo apt install php8.1 php8.1-fpm php7.4-fpm
// omit mysql if using oracle and install the oracle plugin instead
sudo apt install -y php8.1-{opcache,intl,zip,common,redis,mbstring,sqlite3,cli,xml,curl,gd,apcu,soap,mysqlnd}
a2enmod proxy_fcgi setenvif
a2enconf php7.4-fpm
a2enconf php8.1-fpm
Update Virtual Hosts to use the appropriate PHP Version
Each Virtual host using PHP will need to be configured to proxy to the php version is needs to run.