Установка расширений PHP на Ubuntu и Debian

PHP · 19.04.2026
Установка расширений PHP на Ubuntu и Debian

Типы PHP-расширений

PHP-расширения расширяют возможности языка: добавляют поддержку баз данных, изображений, криптографии, сетевых протоколов. Существует два типа: встроенные (идут в комплекте с PHP) и PECL-расширения (устанавливаются отдельно через pecl или apt).

Просмотр установленных расширений

# Список всех загруженных расширений
php -m

# Проверить конкретное расширение
php -m | grep curl

# Подробная информация
php --ri gd

Установка расширений через apt

# Обновляем список пакетов
sudo apt update

# Устанавливаем расширения для PHP 8.2
sudo apt install php8.2-curl php8.2-gd php8.2-mbstring php8.2-xml \
    php8.2-zip php8.2-mysql php8.2-pgsql php8.2-redis \
    php8.2-imagick php8.2-intl php8.2-bcmath php8.2-soap

# Перезапускаем PHP-FPM
sudo systemctl restart php8.2-fpm

Необходимые расширения для популярных CMS

CMS / ФреймворкОбязательные расширения
WordPresscurl, gd, mbstring, mysql, xml, zip, intl
Laravelbcmath, ctype, curl, dom, fileinfo, json, mbstring, openssl, pdo, tokenizer, xml
Drupalgd, pdo, xml, json, mbstring, dom, hash
Magento 2bcmath, curl, gd, intl, mbstring, pdo_mysql, soap, xsl, zip

Установка PECL-расширений (Redis, Imagick)

# Redis через apt (рекомендуется)
sudo apt install php8.2-redis

# Imagick
sudo apt install php8.2-imagick

# Через PECL (если нет в apt)
sudo pecl install redis
echo "extension=redis.so" | sudo tee /etc/php/8.2/mods-available/redis.ini
sudo phpenmod redis

Управление расширениями: phpenmod / phpdismod

# Включить расширение
sudo phpenmod -s fpm mbstring

# Отключить расширение
sudo phpdismod -s fpm xdebug

# Применить изменения
sudo systemctl reload php8.2-fpm
Для разных версий PHP одновременно укажите нужную версию: sudo apt install php7.4-curl php8.1-curl php8.2-curl — каждое расширение устанавливается независимо для каждой версии PHP.

Компиляция расширения из исходников

sudo apt install php8.2-dev
pecl download xdebug
tar xf xdebug-*.tgz && cd xdebug-*
phpize && ./configure --with-php-config=/usr/bin/php-config8.2
make && sudo make install
← Назад в базу знаний Задать вопрос поддержке