- How to List Compiled and Installed PHP Modules in Linux
- How to List Compiled PHP Modules
- How to List Installed PHP Modules
- Установка PHP расширений на Linux
- Установка расширений через панель ISPmanager
- Коротко о pecl
- Установка расширений через apt, yum и pecl
- mcrypt
- ssh2
- redis
- lzf
- igbinary
- Как просмотреть список установленных модулей PHP в Linux
- Как составить список установленных модулей PHP в Linux
- Как вывести список скомпилированных модулей PHP
- Как составить список установленных модулей PHP
- Использование PHPInfo
- Заключение
- Похожие записи:
How to List Compiled and Installed PHP Modules in Linux
If you have installed a number of PHP extensions or modules on your Linux system and you trying to find out a particular PHP module has been installed or not, or you simply want to get a complete list of installed PHP extensions on your Linux system.
In this article, we will show you how to list all installed or compiled PHP modules from Linux command line.
How to List Compiled PHP Modules
The general command is php -m , which will show you a list of all “compiled” PHP modules.
apc bz2 calendar Core ctype curl date dom ereg exif fileinfo filter ftp gd gettext gmp hash iconv json libxml mbstring mcrypt mysql mysqli openssl pcntl pcre PDO pdo_mysql pdo_sqlite Phar readline Reflection session shmop SimpleXML sockets SPL sqlite3 standard tidy tokenizer wddx xml xmlreader xmlwriter xsl zip zlib
You can search for a specific PHP module for instance php-ftp , using the grep command. Simply pipe the output from the above command to grep as shown (grep -i flag means ignore case distinctions, thus typing FTP instead of ftp should work).
# php -m | grep -i ftp ftp
How to List Installed PHP Modules
To list all PHP modules that you have installed via a package manager, use the appropriate command below, for your distribution.
# yum list installed | grep -i php #RHEL/CentOS # dnf list installed | grep -i php #Fedora 22+ # dpkg --get-selections | grep -i php #Debian/Ubuntu
php.x86_64 5.3.3-49.el6 @base php-cli.x86_64 5.3.3-49.el6 @base php-common.x86_64 5.3.3-49.el6 @base php-devel.x86_64 5.3.3-49.el6 @base php-gd.x86_64 5.3.3-49.el6 @base php-mbstring.x86_64 5.3.3-49.el6 @base php-mcrypt.x86_64 5.3.3-5.el6 @epel php-mysql.x86_64 5.3.3-49.el6 @base php-pdo.x86_64 5.3.3-49.el6 @base php-pear.noarch 1:1.9.4-5.el6 @base php-pecl-memcache.x86_64 3.0.5-4.el6 @base php-php-gettext.noarch 1.0.12-1.el6 @epel php-tidy.x86_64 5.3.3-49.el6 @base php-xml.x86_64 5.3.3-49.el6 @base
In case you want to find one particular module, like before, use a pipe and the grep command as shown.
# yum list installed | grep -i php-mbstring #RHEL/CentOS # dnf list installed | grep -i php-mbstring #Fedora 22+ # dpkg --get-selections | grep -i php-mbstring #Debian/Ubuntu
To view all php command line options, run.
You might also like to check out these following useful articles about PHP.
That’s all! In this article, we’ve explained how to list installed (or compiled in) modules in PHP. Use the comment form below to ask any questions.
Установка PHP расширений на Linux
Дополнительно расскажем о том, как подключить расширения в консоли.
Установка расширений через панель ISPmanager
Для начала нужно определить, на какой версии работает наш сайт. Для этого переходим в раздел Домены — WWW-домены , выбираем нужный домен и смотрим последний столбец Версия PHP :
После этого переходим в раздел Настройки web-сервера — PHP , выбираем нужную версию php, расширения:
Далее воспользуемся поиском в верхнем правом углу — вводим туда название расширения. Если оно найдено, выбираем его. По необходимости устанавливаем и включаем:
Коротко о pecl
Прежде чем перейти к установке расширений с помощью пакетных менеджеров и альтернативного репозитория модулей, пару слов скажем о том, с какими ситуациями вы можете столкнуться во время работы с pecl. Ниже будут описаны некоторые из них:
Пример 1. Представим, что у нас две версии php:
Нативная (native) — /usr/bin/php
Альтернативная (alt) — /opt/php73/bin/php — альтернативная версия php 7.3 в панели ISPmanager.
Чтобы установить расширения php, для нативной и альтернативной версии необходимо использовать разные команды.
pecl install Название_расширения
Для альтернативной, php 7.3, так:
/opt/php73/bin/pecl install Название_расширения
Поэтому важно помнить — необходимо указывать полный путь к бинарному файлу pecl. Ниже будут указаны команды установки, без полного пути, так как они могут отличаться, вам нужно иметь это ввиду.
Пример 2. Если вы используете не самую свежую версию php, то во время установки расширения можете получить сообщение о ее несоответствии требованиям — по умолчанию выбираются расширения последних версий, которые часто требуют свежих версий php. Пример уведомления:
requires PHP (version >= 7.0.0, versionВ уведомлении указано, что версия php должна быть не ниже 7.0.0 и не выше 7.1.0, а мы пытаемся установить расширение на версию 5.6.40.
Чтобы понять, какая версия расширения нужна для установки на имеющуюся версию php (в данном случае 5.6.40), обратимся за помощью на официальный сайт. Ищем нужное расширение, переходим на его страницу:
Переходим в список изменений:
Находим в списке изменений, что последней версией расширения, поддерживающей php ниже 7 версии, является redis 2.2.8:
Из этого следует, что для установки нам нужно указать redis-2.2.8, например так (не забудьте поставить знак - между названием расширения и его версией):
/opt/php56/bin/pecl install redis-2.2.8После установки любого из расширений нужно перезапускать apache2/httpd или php-fpm. Также не забудьте проверить, подключилось ли расширение:
/opt/php56/bin/php -m | grep название_расширенияО том, как установить популярное расширение ioncube, читайте в нашей инструкции
Установка расширений через apt, yum и pecl
Ниже описаны установки расширений для всех версий php — от установки зависимостей до подключения. Описание разделено на версию ОС и версию php: нативную (native) или альтернативную (alt). Будьте внимательны при установке расширений для альтернативной версии через pecl.
mcrypt
Во время установки на вопрос “libmcrypt prefix? [autodetect]” жмём Enter.
yum install libmcrypt-devel php-mcryptssh2
apt install libssh2-1-dev php-ssh2redis
Во время установки могут быть заданы вопросы:
enable igbinary serializer support? [no] : «Включить поддержку сериализации через igbinary?»
enable lzf compression support? [no] : «Включить поддержку сжатия через алгоритм lzf?»
enable zstd compression support? [no] : «Включить поддержку сжатия через алгоритм zstd?»
yes - да, no - нетДля выбора yes, должны быть установлены соответствующие модули.
lzf
Во время установки будет задан вопрос:
Sacrifice speed in favour of compression ratio? [no] : «Жертвовать скоростью в пользу степени сжатия?»
yes - да, no - нетПри положительном ответе, будет высокая степень сжатия, но низкая скорость загрузки.
igbinary
Как просмотреть список установленных модулей PHP в Linux
PHP - это популярный язык программирования, который позволяет быстро разрабатывать веб-сайты и веб-приложения. Он поддерживает огромное количество модулей и плагинов, которые вы можете включить в свою установку PHP, чтобы увеличить функциональность ваших сайтов. По мере добавления все новых и новых модулей в нашу установку PHP, мы можем потерять представление о том, какие модули доступны, а какие нет. В таких случаях, чтобы просто перечислить установленные модули PHP в Linux. В этой статье мы узнаем, как составить список установленных модулей PHP в Linux.
Как составить список установленных модулей PHP в Linux
Ниже описаны шаги для составления списка модулей PHP. Некоторые пакеты компилируются при установке PHP, другие устанавливаются после установки PHP. Мы узнаем, как получить список модулей обоих типов.
Как вывести список скомпилированных модулей PHP
Если вы хотите просмотреть список всех скомпилированных модулей PHP, откройте терминал и выполните следующую команду.
Приведенная выше команда покажет все скомпилированные пакеты, которые могут быть довольно длинными. Если вы ищете конкретный скомпилированный пакет, просто передайте вывод вышеприведенной команды команде grep. Вот команда для поиска того, скомпилирован ли модуль ftp или нет.
В приведенной выше команде мы используем опцию -i в grep, чтобы игнорировать регистр имен модулей.
Как составить список установленных модулей PHP
Вы также можете установить модули через менеджеры пакетов Linux, такие как yum, dnf, dpkg.
RHEL, CentOS
Debian, Ubuntu
Приведенные выше команды выведут список всех модулей, которые вы установили с помощью менеджеров пакетов. Если вы ищете конкретный модуль, вы можете передать вывод вышеприведенной команды команде grep и найти нужный пакет. Вот команда для поиска модуля ftp в PHP.
yum list installed | grep -i php | grep -i ftp
dnf list installed | grep -i php | grep -i ftp
dpkg --get-selections | grep -i php | grep -i ftp
Использование PHPInfo
В качестве альтернативы вы можете создать небольшой PHP-файл и добавить его в корень вашего сайта, чтобы просмотреть список всех модулей в вашем веб-браузере. Этот файл называется phpinfo(). Создайте пустой файл test.php в корневом месте вашего сайта, где хранятся все остальные документы о вашем сайте. Вы можете использовать любое имя файла, лишь бы расширение было .php.
Добавьте в него следующие строки.
Избегайте использования index.php в качестве имени файла, так как он обычно обозначает домашнюю страницу, а также избегайте использования phpinfo.php, так как это облегчит хакерам поиск информации о вашей установке PHP.
Теперь вы можете напрямую просмотреть его в браузере, перейдя по URL http://your_domain_or_ip/test.php. Замените your_domain_or_ip на имя вашего домена или IP-адрес сервера. Эта веб-страница предоставит вам полную информацию о вашей установке PHP, такую как используемая версия PHP, доступные основные функции и загруженные модули.
Заключение
Существует несколько способов добавления модулей в установку PHP. В этой статье мы научились составлять список установленных модулей PHP, независимо от того, скомпилированы ли они при установке PHP или установлены через менеджер пакетов.
Похожие записи: