==== Rocky Linux PHP 8.1 Upgrade ==== Pre-existing PHP 7.4 RPMs: [root@tidewater: ~]# rpm -qa |grep php | sort oniguruma5php-6.9.7.1-1.el7.remi.x86_64 php-7.4.28-1.el7.remi.x86_64 php-cli-7.4.28-1.el7.remi.x86_64 php-common-7.4.28-1.el7.remi.x86_64 php-json-7.4.28-1.el7.remi.x86_64 php-mbstring-7.4.28-1.el7.remi.x86_64 php-mysqlnd-7.4.28-1.el7.remi.x86_64 php-pdo-7.4.28-1.el7.remi.x86_64 php-pecl-mcrypt-1.0.4-1.el7.remi.7.4.x86_64 php-sodium-7.4.28-1.el7.remi.x86_64 php-xml-7.4.28-1.el7.remi.x86_64 Install PHP 8.1 on 6 March 2022 using https://computingforgeeks.com/how-to-install-php-centos-rhel-linux/ # dnf module list php # dnf -y module reset php # dnf module install php:remi-8.1 # dnf install php php-mysqlnd php-pecl-mcrypt libmcrypt libmcrypt-devel Update the php.ini to my local changes # systemctl restart httpd # systemctl daemon-reload Ensure latest version of PHP is installed: # php --version After installation, PHP 8.1 RPMs include the following: # rpm -qa |grep php | sort oniguruma5php-6.9.8-1.el8.remi.x86_64 php-8.1.6-1.el8.remi.x86_64 php-cli-8.1.6-1.el8.remi.x86_64 php-common-8.1.6-1.el8.remi.x86_64 php-fpm-8.1.6-1.el8.remi.x86_64 php-mbstring-8.1.6-1.el8.remi.x86_64 php-mysqlnd-8.1.6-1.el8.remi.x86_64 php-opcache-8.1.6-1.el8.remi.x86_64 php-pdo-8.1.6-1.el8.remi.x86_64 php-pecl-mcrypt-1.0.5-1.el8.remi.8.1.x86_64 php-sodium-8.1.6-1.el8.remi.x86_64 php-xml-8.1.6-1.el8.remi.x86_64 Be sure to test the following: * phpinfo.php * https://juckins.net and all ASMAD pages * lastupdated.php and tat_local_php81.php * Test 127.0.0.1, localhost, and SERVER IP ADDRESS These errors appeared: Deprecated: Constant FILTER_SANITIZE_STRING is deprecated in ... Fix is explained at [[https://stackoverflow.com/questions/69207368/constant-filter-sanitize-string-is-deprecated|Stack Overflow]] and 2 options are the following: * use FILTER_SANITIZE_FULL_SPECIAL_CHARS * use FILTER_UNSAFE_RAW NOTE: 7 March 2022 * Had to back out to PHP v7.4 * Local copy of Dokuwiki would not render correctly * Fixed upon attempt number 2 in June 2022 * Ensure permissions are correct * Local TAT http wget was failing * Needed to install php-pecl-mcrypt * Fixed upon attempt number 2 in June 2022 If php-pecl-mcrypt disappears one day, you can use [[https://pecl.php.net/package/mcrypt|PECL]] pecl update-channels pecl install mcrypt-1.0.5 Follow note at end of install to update the php.ini. You may need to use dnf to install pecl (dnf provides pecl)