Установка Ioncube Loader на php7.4 в Ubuntu/ CentOS/ Debian

Ioncube Loader это PHP модуль, для загрузки файлов, защищенных ПО Ioncube Encoder. Ioncube обычно используется коммерческими компаниями, занимающимися разработкой на PHP для защиты их продуктов

1. Подготовка

Предположим, что вебсервер с PHP уже настроены и работают. В хоте установки мы будем использовать Nano и Wget.

Если у вас они не установлены, то установим их:

CentOS

yum install nano wget

Debian/Ubuntu

apt-get install nano wget

2. Загрузка Ioncube Loader

Ioncube Loader может быть загружен с официального сайта Ioncube Inc. Есть версии как под 32-битные системы, так и под 64-битные.

Для начала выясним, какая разрядность у системы на сервере, набрав:

uname -a

В результате увидим подобный результат:

Linux port 5.4.0-48-generic #52-Ubuntu SMP Thu Sep 10 10:58:49 UTC 2020 x86_64 x 86_64 x86_64 GNU/Linux

Если в результате есть x86_64, значит сервер работает с64-битным ядром Linux, иначе 32-битное.

Загрузим сам Ioncube Loader в формате tar.gz в папку /tmp, после чего распакуем его.

Для 64-битных систем:

Заходим в директорию тмп:

cd /tmp

Скачиваем в нее архим:

wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz   

и распаковываем:

tar xfz ioncube_loaders_lin_x86-64.tar.gz

Так же для 32-битных систем:

cd /tmp

wget downloads3.ioncube.com/loader_downloads/ion...

tar xfz ioncube_loaders_lin_x86.tar.gz

После результате распаковки мы получили папку ioncube

3. Так какой Ioncube Loader нам устанавливать?

После перехода в папку /tmp/ioncube/ вы увидите много файлов:

ls /tmp/ioncube/
 

LICENSE.txt ioncube_loader_lin_5.0_ts.so ioncube_loader_lin_5.6.so

README.txt ioncube_loader_lin_5.1.so ioncube_loader_lin_5.6_ts.so

USER-GUIDE.pdf ioncube_loader_lin_5.1_ts.so ioncube_loader_lin_7.0.so

USER-GUIDE.txt ioncube_loader_lin_5.2.so ioncube_loader_lin_7.0_ts.so

ioncube_loader_lin_4.1.so ioncube_loader_lin_5.2_ts.so ioncube_loader_lin_7.1.so

ioncube_loader_lin_4.2.so ioncube_loader_lin_5.3.so ioncube_loader_lin_7.1_ts.so

ioncube_loader_lin_4.3.so ioncube_loader_lin_5.3_ts.so ioncube_loader_lin_7.2.so

ioncube_loader_lin_4.3_ts.so ioncube_loader_lin_5.4.so ioncube_loader_lin_7.2_ts.so

ioncube_loader_lin_4.4.so ioncube_loader_lin_5.4_ts.so ioncube_loader_lin_7.3.so

ioncube_loader_lin_4.4_ts.so ioncube_loader_lin_5.5.so ioncube_loader_lin_7.3_ts.so

ioncube_loader_lin_5.0.so ioncube_loader_lin_5.5_ts.so loader-wizard.php

ioncube_loader_lin_5.2.so ioncube_loader_lin_7.4.so

ioncube_loader_lin_5.2_ts.so ioncube_loader_lin_7.4_ts.so

 Число в имени файла соответствует версии PHP, для которой он собран, а _tsэтоThread Safeверсии. Мы будем использовать обычную версию 7.4.so (не Thread Safe).

Для начала выясним, какая версия PHP у нас установлена:

php -v

В результате вы получите нечто подобное:

PHP 7.4.3 (cli) (built: May 26 2020 12:24:22) ( NTS )

Copyright © The PHP Group

У нас установлен PHP версии 7.4 Запомним ее.

Теперь выясним, где расположена папка с расширениями PHP:

php -i | grep extension_dir

Получаем подобный результат:

extension_dir => /usr/lib/php/20190902 => /usr/lib/php/20190902 

 На скриншоте нужный нам путь был выделен. И это

 /usr/lib/php/20190902 .

У вас может быть другой путь, в зависимости от операционной системы и версии PHP.

Скопируем Ioncube Loader для PHP 7.4 в папку расширений:

cp /tmp/ioncube/ioncube_loader_lin_7.4.so /usr/lib/php/20190902 

Не забудьте, чтоцифра в имени файла – версия PHP, д которой собран Ioncube Loader. Не перепутайте.

4. Настройка PHP для Ioncube Loader

Здесь нам понадобится добавить в конфигурацию PHP (php.ini) строку, отвечающую за загрузку расширения:

Эта операция различается для CentOS и Debian/Ubuntu:

4.1 Для CentOS

В CentOS есть основной файл php.ini, в который мы и добавим вышеуказанную строку. Откроем файл для редактирования:

nano /etc/php.ini

И добавим строку в него:

zend_extension = /usr/lib/php/20190902/ioncube_loader_lin_7.4.so

У вас будет другой путь, поэтому проверьте, что ничего не перепутали.

После этого сохраняем файл и перезапускаем вебсервер и PHP (если PHP НЕ как модуль Apache):

service httpd restart

service php-fpm restart

4.2 Для Debian/Ubuntu

В отличие от CentOS в Debian/Ubuntu есть несколько файлов php.ini, для PHP CLI (командная строка), CGI, модуля Apache и PHP FPM.

Обычно они расположены по следующим путям:

/etc/php/php7.4/apache2/php.ini

/etc/php/php7.4/cli/php.ini

/etc/php/php7.4/cgi/php.ini

/etc/php/php7.4/fpm/php.ini

Нам потребуется отредактировать каждый из них или отредактировать только нужные вам (допустим вам не нужен Ioncube Loader в CGI)

Также как и в CentOS открываем файл для редактирования и добавляем вышеуказанную строку:

Для модуля Apache:

nano /etc/php/php7.4/apache2/php.ini

И вставляем

zend_extension = /usr/lib/php/20190902/ioncube_loader_lin_7.4.so

Эту же операцию проводим для остальных файлов.

После чего перезагружаем вебсервер и PHP (если PHP НЕ как модуль Apache):

service apache2 restart

service php7.4-fpm restart

5. Проверяем Ioncube Loader

Проверим, правильно ли мы установили Ioncube Loader, для этого в консоли выполните следующую команду:

php -v

В результате вы получите что-то вроде

PHP 7.4.3 (cli) (built: May 26 2020 12:24:22) ( NTS )

Copyright © The PHP Group

Zend Engine v3.4.0, Copyright © Zend Technologies

with Zend OPcache v7.4.3, Copyright ©, by Zend Technologies .

10:31
2910
Lit
RSS
Нет комментариев. Ваш будет первым!

Похожий контент

Стек LEMP – это группа программ, предназначенная для обслуживания динамических веб-стран...
Создав сервер Ubuntu 18.04, необходимо выполнить его начальную настройку. Это повысит за...
Nginx – один из самых популярных веб-серверов в мире, позволяющий размещать очень объемн...
HTTP-сервер Apache – самый популярный веб-сервер. Он предоставляет множество производите...