Introduction
PHP stands for Hypertext Preprocessor, and it's a script-based server-side programming language.
PHP helps automate various server tasks. It handles tasks such as dynamic content, database requests, and data preprocessing/display.
Read our tutorial on how to install PHP on Ubuntu 20.04 or 22.04 including integration with Apache and Nginx.
Prerequisites
- A Linux system running Ubuntu 20.04 or 22.04
- Access to an Ubuntu user account with sudo privileges.
- Access to a command line/terminal window (Ctrl+Alt+T).
- A running web server (Apache or Nginx).
Installing PHP on Ubuntu
Like many developer tools, PHP has several different release versions. At the time of writing, PHP 7.4. and 8.1 are the currently supported and most used versions of the software.
The following command installs PHP using the apt package manager:
sudo apt install php
On Ubuntu 20.04, the command installs PHP 7.4 while Ubuntu 22.04 installs PHP version 8.1.
If you're looking to choose the specific version of PHP on either system, follow one of the installation steps below.
1. Install PHP with Apache on Ubuntu
If you are running an Apache web server, install PHP with the Apache module. Below you will find installations for both PHP 7.4 and PHP 8.1.
1. Ensure you are using the latest repository updates by entering the following command into a terminal window:
sudo apt update && sudo apt upgrade
2. Install software-properties-common to help you manage distributions and independent software sources:
sudo apt install software-properties-common
If the package is already available, continue to the next step.
3. Next, add the ondrej/php PPA which provides different PHP versions for Ubuntu:
sudo add-apt-repository ppa:ondrej/php
After the PPA loads, press Enter to confirm adding the repository. The available PHP versions in the PPA are from 5.6 up to 8.2.
4. Update apt to include the new packages:
sudo apt update
5. Now you can install specific PHP versions. For example:
- To install PHP 7.4, run the command:
sudo apt -y install php7.4
- To install PHP 8.1, run the following command:
sudo apt -y install php8.1
Note: The command for installing PHP automatically installs the PHP module for Apache 2. If it fails to do so, run the following command instead:
sudo apt -y install libapache2-mod-php<version>
6. Verify the installation with:
php -v
The output displays the PHP version you installed.
If you installed version 7.4, the output appears as in the image below.
If you installed PHP 8.1, the output shows:
2. Install PHP with Nginx on Ubuntu
The Nginx server does not have native PHP processing. If you are using an Nginx server instead of Apache, follow the steps below to install PHP 7.4 or 8.1 to work with Nginx.
1. Enter the following command into a terminal window to ensure you are using the latest software:
sudo apt update && sudo apt upgrade
2. Add the ondrej/php PPA to include various PHP versions:
sudo add-apt-repository ppa:ondrej/php
When the PPA information loads, press Enter to continue.
2. To install PHP for Nginx, use one of the following commands:
- For PHP 7.4:
sudo apt install php7.4-fpm -y
- For PHP 8.1:
sudo apt install php8.1-fpm -y
The system will reach out to download and install the package and its dependencies.
2. Once the installation finishes, restart the Nginx service to apply the changes by entering:
sudo systemctl restart nginx
3. Next, enable PHP support by editing the server block. Open the server block with the command:
sudo nano /etc/nginx/sites-available/default
4. Add the following code to your server block file for Nginx to make use of PHP:
server{
# . . . existing configuration
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php<version>-fpm.sock;
}
}
Exchange the <version>
for your PHP version.
4. Save the file and exit.
5. Finally, restart Nginx on Ubuntu and reload PHP:
sudo systemctl restart nginx
sudo systemctl reload php<version_number>-fpm
Installing PHP Modules on Ubuntu
To install additional PHP modules, use the following syntax:
sudo apt install php<version>-<package_name>
For example:
sudo apt install php8.1-posix
Alternatively, install multiple modules at once. For example, to install modules mysql, zip and bcmath on PHP 7.4, you would run:
sudo apt install php7.4-{mysql,zip,bcmath}
To list all loaded PHP modules run the command:
php -m
The output lists all compiled PHP modules, as in the example below.
How to Uninstall PHP on Ubuntu
To uninstall PHP from Ubuntu, follow the instructions below:
1. Run the following command in the terminal:
sudo apt-get purge php<version>
For example, if you installed the PHP 7.4 FPM version, run:
sudo apt-get purge php7.4-fpm
2. Remove the orphaned packages with:
sudo apt-get autoremove
3. Lastly, check the PHP version to confirm the uninstall worked:
php -v
If the output does not show the version, the uninstall removed everything correctly.
Conclusion
After reading this article, you should have successfully installed PHP 7.4 or 8.1 with Apache or Nginx on your Ubuntu 20.04 and 22.04 system.
One important thing to remember is that PHP works in tandem with an existing server, so you need to install it specifically to your server software. Alternatively, you can always install a stable version from the default Ubuntu software repositories.