How To Install PHP 8 On Ubuntu 22.04 LTS

PHP
By bhagwatchouhan
How To Install PHP 8 On Ubuntu 22.04 LTS

This tutorial provides all the steps required to install PHP 8 on Ubuntu 22.04 LTS. The steps should be similar on the other versions of Ubuntu and Linux based systems.

Install PHP 8

In this step, we will install PHP 8 on Ubuntu 22.04 LTS.

# Refresh indexes
sudo apt update

We can install PHP 8 on Ubuntu 22.04 LTS using the commands shown below.

# Install PHP 8 on Ubuntu 22.04 LTS
sudo apt install php8.1

# The command also installs apache2 and libapache2-mod-php8.1 in case it's not installed
# We can specify the option --no-install-recommends to avoid installion of apache2

It will ask to confirm the installation. Press Y and hit Enter to confirm the installation. The important paths and files of the PHP installation are /usr/lib/php/8.1/usr/bin/php8.1, and /etc/php/8.1/cli/php.ini.

# Verify PHP
php --version

# Output
PHP 8.1.2-1ubuntu2.9 (cli) (built: Oct 19 2022 14:58:09) (NTS) Copyright (c) The PHP Group Zend Engine v4.1.2, Copyright (c) Zend Technologies with Zend OPcache v8.1.2-1ubuntu2.9, Copyright (c), by Zend Technologies

# Autoclean
sudo apt autoclean

# Autoremove
sudo apt autoremove
# OR
sudo apt --purge autoremove

Install Apache2 Module

In case the Apache2 Module was not installed while installing PHP, we can use the below-mentioned commands to install the Apache2 Module for PHP. It's required for the Apache Web Server.

# Install Apache2 Module if not installed by default
sudo apt install libapache2-mod-php8.1

PHP for NGINX

We can install PHP FPM and configure it for Nginx. This will eliminate the need for the Apache Web Server and Nginx can handle the PHP requests.

# FPM
sudo apt install php8.1-fpm

# Check Status
systemctl status php8.1-fpm

# Output
● php8.1-fpm.service - The PHP 8.1 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php8.1-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2022-12-20 10:43:17 IST; 8s ago Docs: man:php-fpm8.1(8) Process: 39943 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /run/php/php-fpm.sock /etc/php/8.1/fpm/pool.d/www.conf 81 (code=exit> Main PID: 39940 (php-fpm8.1) Status: "Ready to handle connections" Tasks: 3 (limit: 18936) Memory: 7.1M CPU: 60ms CGroup: /system.slice/php8.1-fpm.service ├─39940 "php-fpm: master process (/etc/php/8.1/fpm/php-fpm.conf)" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" ├─39941 "php-fpm: pool www" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "> └─39942 "php-fpm: pool www" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "> Dec 20 10:43:16 bravo systemd[1]: Starting The PHP 8.1 FastCGI Process Manager... Dec 20 10:43:17 bravo systemd[1]: Started The PHP 8.1 FastCGI Process Manager.

Install MySQL Extension

Use the below-mentioned commands to install the MySQL extension for PHP 8.

# Install MySQL Extension
sudo apt install php8.1-mysql

# Enable PDO module
sudo phpenmod pdo_mysql

# Install MySQL Extension - Required for Wordpress Installation
sudo apt install php-mysql

Additional Extensions

You can also install the additional extensions in order to fully support a web application. Some of these packages might not be required in your scenario, hence it's totally optional to install these extensions.

# Install CGI and CLI if not installed by default
sudo apt install php8.1-common php8.1-cli php8.1-cgi

# Install CURL extensions
sudo apt install php8.1-curl

# Install PHP GD and Imagick
sudo apt install php8.1-gd php-imagick

# Multibyte String, Internationalization and Spell Check
sudo apt install php8.1-mbstring php8.1-intl php8.1-pspell

# Multibyte String, Internationalization and Spell Check - Required for Wordpress Installation
sudo apt install php-mbstring php-intl php-pspell

# Emails
sudo apt install php8.1-imap

# SQLite Database
sudo apt install php8.1-sqlite3

# Tidy and XML RPC
sudo apt install php8.1-tidy php8.1-xmlrpc

# Excel
sudo apt install php8.1-xsl

Install OPcache to enable caching at the bytecode level.

# Install OPcache extension
sudo apt install php8.1-opcache

Install the extensions to handle compressed files.

# Install Zip
sudo apt install php8.1-zip

These are the steps required to install PHP 8 on Ubuntu 22.04 LTS. We have also installed the additional packages that are mostly required for the website development.

Summary

This tutorial provided all the steps required to install PHP 8 on Ubuntu 22.04 LTS. We have also installed the popular extensions for PHP which are required to host web applications.

share on :

Profile picture for user bhagwatchouhan
bhagwatchouhan