Share your love
How To Install PHP 8.1 on AlmaLinux 9
In this article, you will learn How To Install PHP 8.1 on AlmaLinux 9.
PHP is an open-source, server-side programming language that can be used to create websites, applications, customer relationship management systems, and more. It is a widely-used general-purpose language that can be embedded into HTML. This functionality with HTML means that the PHP language has remained popular with developers as it helps to simplify HTML code.
In this guide, you will learn to install the latest stable version of PHP on AlmaLinux 9.
At the current time, PHP 8.1 is the latest stable version.
Steps To Install PHP 8.1 on AlmaLinux 8
To complete this guide, you need to log in to your server as a non-root user with sudo privileges. To do this, you can follow our article the Initial Server Setup with AlmaLinux 9.
Install PHP Remi Repository on AlmaLinux 9
First, you need to update your local package index with the following command:
sudo dnf update -y
Then, you need to install the Epel repository on AlmaLinux 9 with the command below:
sudo dnf install epel-release
Currently, PHP 8.1 is not featured in AlmaLinux’s AppStream. So you can install PHP from (Remi) repository that deploys the latest PHP 8.1 builds. To do this, run the following command:
sudo dnf install dnf-utils https://rpms.remirepo.net/enterprise/remi-release-9.rpm
Again update your local package index to update your repository:
sudo dnf update -y
Now you need to remove the PHP and PHP-FPM previous versions if you have them installed on your server. To do this, run the following command:
sudo dnf remove php php-fpm -y
Then remove the rest of the package extensions with the command below:
sudo dnf remove php* -y
To reset the PHP module list on AlmaLinux 9, you can use the following command:
sudo dnf module list reset php -y
Output
Remi's Modular repository for Enterprise Linux 9 - x86_64
Name Stream Profiles Summary
php remi-7.4 common [d], devel, minimal PHP scripting language
php remi-8.0 common [d], devel, minimal PHP scripting language
php remi-8.1 common [d], devel, minimal PHP scripting language
php remi-8.2 common [d], devel, minimal PHP scripting language
Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
Note: PHP 8.2 is available for testing at the time of writing this guide.
Now you need to enable PHP 8.1 on AlmaLinux 9 with the command below:
sudo dnf module enable php:remi-8.1
Installing PHP 8.1 on AlmaLinux 9
At this point, you have added the Remi PHP repository and enabled PHP 8.1 to be the default version on your system, you can install PHP 8.1 with the following command:
sudo dnf install php
If you would like to install the most commonly used extensions for PHP 8.1, use the following command:
sudo dnf install php-cli php-fpm php-curl php-mysqlnd php-gd php-opcache php-zip php-intl php-common php-bcmath php-imap php-imagick php-xmlrpc php-json php-readline php-memcached php-redis php-mbstring php-apcu php-xml php-dom php-redis php-memcached php-memcache
Finally, you can use the following command for anyone interested in installing the development branch:
sudo dnf install php-devel -y
To verify your PHP 8.1 installation on AlmaLinux 9, you can check its version:
php -v
Output
PHP 8.1.10 (cli) (built: Aug 30 2022 16:09:36) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.1.10, Copyright (c) Zend Technologies
with Zend OPcache v8.1.10, Copyright (c), by Zend Technologies
By default on AlmaLinux 9, the PHP-FPM service is designed to be run (Apache) user. If you are using Nginx you need to make configuration changes at (www.conf).
You can open the file with your favorite text editor, here we use vi:
sudo vi /etc/php-fpm.d/www.conf
Find the user and group directives and change them to Nginx as shown below:
user = nginx group = nginx
When you are done, save and close the file.
Reload the PHP-FPM service to apply the changes:
sudo systemctl restart php-fpm
The Nginx server block needs the following example below for Nginx to process the PHP files.
Below is an example for all server {} blocks that process PHP files that need the location ~ .php$ added.
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
For more information, you can visit the PHP Documentation page.
Conclusion
At this point, you learn to Install PHP 8.1 on AlmaLinux 9.
Hope you enjoy it.