Помощь

Установка дополнительных модулей PHP на CentOS

Ниже мы познакомимся с процессом установки модулей PHP на сервере, работающем под управлением операционной системы CentOS.

Создание скрипта phpinfo

Прежде чем перейти к установке модулей PHP, нам потребуется получать информацию о параметрах PHP на сервере. Для этого создадим скрипт phpinfo.php в директории вашего сайта.

Для выполнения этой операции, подключитесь к серверу по SSH и следуйте этим шагам:

1. Перейдите в директорию вашего сайта:

cd путь/к/директории/вашего/сайта

Если, например, у вас установлен сервер LAMP (который часто автоматически устанавливается при создании сервера), перейдите в следующую директорию:

cd /var/www/html

Если вы используете панель управления VestaCP:

cd /home/имя_пользователя/web/имя_домена/public_html

2. Создайте файл phpinfo.php:

nano phpinfo.php

3. Добавьте в файл следующее содержимое:

<?php
phpinfo();
phpinfo(INFO_MODULES);
?>

4. Сохраните внесенные изменения (для выхода из редактора nano, нажмите Ctrl+X, затем подтвердите сохранение, нажав Y, и нажмите Enter).

Далее, перейдя по адресу http://вашдомен/phpinfo.php в вашем браузере, вы сможете увидеть информацию о текущих настройках PHP на вашем сервере.

Установка модулей на примере imagick

Рассмотрим установку модулей PHP, взяв модуль imagick в качестве примера.

1. Сначала определите точное имя пакета.

Если у вас нет точного имени пакета, вы можете воспользоваться следующей командой, указав часть имени пакета:

yum search ima

После того как вы определите точное имя модуля, вы сможете перейти к его установке.

2. Обновите информацию о доступных пакетах из репозиториев:

yum update

3. Теперь установите необходимый модуль:

yum install ImageMagick ImageMagick-devel

4. Большинство дополнений можно установить из репозитория PECL. Чтобы убедиться, что этот способ подходит для нужного дополнения, проверьте его наличие на этой странице: https://pecl.php.net/packages.php.

Для начала установите пакет php-pear:

yum install php-pear gcc make php-devel

5. Теперь выполните следующую команду:

pecl install imagick

6. В процессе установки вам будет предложено ввести следующее значение:

Please provide the prefix of Imagemagick installation

В ответ на запрос системы введите all и нажмите Enter.

7. Затем проверьте, какая директория задана для расширений. Для этого перейдите на страницу http://вашдомен/phpinfo.php и найдите параметр extension_dir:


Перейдите в указанную директорию:

cd /usr/lib64/php/modules

Затем проверьте, есть ли установленная библиотека:

ls

Вы можете указать часть имени пакета в названии для упрощения вывода, например:

ls ima*

Если библиотека установлена, она будет отображена в консоли:


8. Теперь выполните следующую команду, чтобы создать файл конфигурации imagick.ini и добавить в него директиву extension=imagick.so:

echo "extension=imagick.so" > /etc/php.d/imagick.ini

9. Для перезапуска веб-сервера Apache выполните следующую команду:

systemctl restart httpd

10. Обновите страницу http://вашдомен/phpinfo.php и найдите установленный модуль, чтобы убедиться, что все работает правильно:


Подключение внешних библиотек

Если вам необходимо подключить библиотеку, которую вы загрузили не из репозитория, выполните следующие действия:

1. Загрузите файл с расширением .so в директорию с остальными библиотеками (путь можно найти в параметре extension_dir на странице http://вашдомен/phpinfo.php; в нашем примере это /usr/lib64/php/modules/).


2. Перейдите в директорию /etc/php.d:

cd /etc/php.d

3. Создайте конфигурационный файл:

nano имя_библиотеки.ini 

Например:

nano curl.ini

4. В созданном файле укажите следующую директиву и сохраните изменения:

extension=имя_библиотеки.so 

Например:

extension=curl.so

5. Перезапустите Apache:

systemctl restart httpd

6. Обновите страницу http://вашдомен/phpinfo.php и убедитесь, что библиотека установлена.

Если файл библиотеки был размещен в другой директории, то на шаге 4 необходимо указать соответствующий путь в директиве extension, например:

extension=/usr/local/lib/php/extensions/curl.so

Остались вопросы - пишите