How To Install PHP (8.2, 8.1, 7.4) on Ubuntu 22.04
PHP is a programming language used for developing web applications. You must install PHP packages on a Ubuntu system to run the application written on it. Generally, it is used to create e-commerce websites, blogs, and API applications. If you’re looking for an easy way to install PHP on Ubuntu 22.04, look no further. This blog post will show you how to do it quickly and easily.
We will use the Ondrej PPA for installing PHP on Ubuntu 22.04 LTS system. Which contains PHP 8.2, 8.1, 8.0, 7.4, 7.3, 7.2, 7.1, 7.0 & PHP 5.6 packages. You can install any of the versions required for your application. The new application developers are suggested to use the latest PHP version ie PHP 8.2.
In this tutorial, you will learn how to install PHP on Ubuntu 22.04 LTS system. This tutorial is also compatible with Ubuntu 20.04 LTS, and Ubuntu 18.04 LTS systems.
Prerequisites
First, log in to Ubuntu 22.04 via the console. Then update the Apt cache and upgrade the current packages of the system using the following command:
sudo apt update && sudo apt upgrade
When prompted, press ‘y’ to confirm the installation.
Step 1: Install PHP on Ubuntu 22.04
PHP installation on Ubuntu systems is pretty straightforward. You just need to add the required PPA and you can install any PHP version on the Ubuntu system.
Follow these steps to complete PHP installation on Ubuntu:
-
Install a few dependencies required by this tutorial with the below-mentioned command:
sudo apt install software-properties-common ca-certificates lsb-release apt-transport-https
LC_ALL=C.UTF-8 sudo add-apt-repository ppa:ondrej/php
sudo apt update
-
Install PHP 8.2:
sudo apt install php8.2
sudo apt install php8.1
sudo apt install php7.4
sudo apt install php5.6
sudo apt install php8.2-[extension]
Replace [extension] with the extension you want to install, if you want to add multiple extensions then include them in braces, I am going to install “php-mbstring, php-mysql, php-xml, and php-curl” by running the below-mentioned command:
sudo apt install php8.2-mysql php8.2-mbstring php8.2-xml php8.2-curl
Step 2: Check Active PHP Version
Now after installation verify that the correct version of PHP is installed by checking the version number by the below-mentioned command:
php -v
Output:PHP 8.2.1 (cli) (built: Jan 13 2023 10:43:08) (NTS) Copyright (c) The PHP Group Zend Engine v4.2.1, Copyright (c) Zend Technologies with Zend OPcache v8.2.1, Copyright (c), by Zend Technologies
Step 3: Understand PHP Configuration Files
The PHP configuration files are stored under /etc/php directory with the version numbers. For example, all the configuration files related to PHP 8.2 are located below:
- Main PHP configuration file location:
- PHP CLI: /etc/php/8.2/cli/php.ini
- Apache: /etc/php/8.2/apache2/php.ini
- PHP FPM: /etc/php/8.2/fpm/php.ini
- All the installed PHP modules are stored under /etc/php/8.2/mods-available directory.
- PHP Active modules configuration directory location:
- PHP CLI: /etc/php/8.2/cli/conf.d/
- Apache: /etc/php/8.2/apache2/conf.d/
- PHP FPM: /etc/php/8.2/fpm/conf.d/
To check files for the other PHP versions, just change the PHP version number (8.2 in the above example) in the files and directory path.
Step 4: Change Default PHP Version
You can use an `update-alternatives` command to set the default PHP version. Use this tutorial to read more details about switching the PHP version for CLI and Apache.
sudo update-alternatives --config php
Output: (Select your choice)There are 4 choices for the alternative php (providing /usr/bin/php). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/bin/php8.1 81 auto mode 1 /usr/bin/php5.6 56 manual mode 2 /usr/bin/php7.4 74 manual mode 3 /usr/bin/php8.0 80 manual mode 4 /usr/bin/php8.1 81 manual mode 5 /usr/bin/php8.2 82 manual mode Press to keep the current choice[*], or type selection number: 2
The above output shows all the installed PHP versions on your system. Selection number 2 set PHP 7.4 as the default PHP version for the command line.
Step 5: Uninstalling PHP (Optional)
If any PHP version is no more required, it can be removed from the system. That will free the disk space as well as system security.
To uninstall any PHP version just type:
sudo apt remove php5.6
Also, uninstall all the modules for that version with the following command:
sudo apt remove php5.6-*
Conclusion
This tutorial provides you with the instructions to install PHP on Ubuntu 22.04. The Ondrej PPA allows us to install PHP on Ubuntu systems quickly. It also allows us to install multiple PHP versions on a single system. You can switch to any PHP version as default anytime with the update-alternative utility.
Как установить PHP расширения на Linux
Во время первичной настройки сервера одним из важнейших этапов является установка расширений PHP – они нужны для работы большинства CMS, в том числе и популярных WordPress, Magento, Laravel. В этой статье мы расскажем, какие PHP-скрипты ставить обязательно и как это сделать через консоль. Устанавливать будем на Ubuntu 20.04, но синтаксис описанных ниже команд можно адаптировать под любую другую систему Linux.
О чем вы узнаете в этой статье?
- Инсталляция PHP 7.4 для Apache
- Руководство по установке PHP 7.4 для Nginx
- Как установить PHP расширения
- Немного о PECL и заключение
Инсталляция PHP 7.4 для Apache
Пользователям этого веб-сервера достаточно выполнить последовательно две команды:
sudo apt update sudo apt install php libapache2-mod-php
А затем перезапустить веб-сервер, чтобы изменения вступили в силу и PHP-скрипты начали работать:
sudo systemctl restart apache2
Руководство по установке PHP 7.4 для Nginx
Этот веб-сервер не поддерживает обработку PHP «из коробки», так что для работы ему потребуется менеджер процессов fastCGI – PHP-FPM. Через консоль вбиваем:
sudo apt update sudo apt install php-fpm
По завершению установки служба начнет работать, не потребуется даже перезагрузка. Проверить статус её работы можно с помощью команды:
systemctl status php7.4-fpm
А теперь переходим непосредственно к установке расширений PHP.
Как установить PHP расширения
Эти пакетные модули представляют собой скомпилированные библиотеки, которые расширяют базовые функции PHP. Они часто нужны для работы программистам и вебмастерам, так как помогают реализовать многие интересные фичи. Для установки пакетов используется команда:
sudo apt install php-[extname]
- php-mysql — нужен при работе с БД, чаще всего ставится вместе с основным пакетом языка;
- php-ctype — нужен в тех случаях, когда при работе возникает ошибка Fatal error: Call to undefined function ctype_digit() in /wp-admin/includes/file.php;
- php-dom — бывает нужен при работе с Windows-хостингом, но чаще всего не востребован;
- php-exif — необходим для работы с мета-данными фото;
- php-gd — применяется при обработке картинок, нужен часто;
- php-iconv — конвертация строки из одной кодировки в другую;
- php-json — поддержка JSON;
- php-posix — используется в классе WP_Filesystem_Direct
- php-mbstring — обязателен, нужен для обработки строк;
- php-zip, php-zlib — полезен тем, кто работает с архивами.
Вообще, полный список всех существующих PHP-расширений исчисляется сотней различных модулей, большинство из которых узкоспециальные и используются точечно IT-специалистами для оптимизации рабочих задач.
Установить PHP расширения можно также через панель управления ISPmanager или любую другую – там в соответствующей вкладке можно загрузить и установить все необходимые пакеты без консоли.
Немного о PECL и заключение
Отдельно стоит сказать о репозитории нативных расширений для PHP, написанных на языке C. Их используют в тех случаях, когда на PHP не получается реализовать какие-то идеи – например, перезагрузку операторов. Все модули в репозитории PECL разработаны в строгом соответствии со стандартами кодирования, принятых командой разработчиков PHP, поэтому качество их работы не должно вызывать у вас никаких сомнений.
Если остались вопросы касательно того, как установить и подключить PHP расширения на свой сервер, обращайтесь к нашим специалистам через Livechat или по телефону. Мы ответим на все интересующие вопросы в рамках своей компетенции.
