ionCube — это популярный способ шифрования php-файлов. ionCube был создан в 2002 как инструмент для защиты программного обеспечения (написанном на PHP) от просмотра, изменения или запуска на компьютерах, без требуемой лицензии. Сама технология кодирования выросла из проекта PHP Accelerator и изначально запускалась в составе сервиса, в котором PHP-скрипты загружались, раскодировались и возвращались обратно в командную оболочку.
Попробуем установить ionCube на сервере под управлением FreeBSD. Исходные данные следующие:
# uname -srm FreeBSD 10.3-RELEASE amd64 # php -v PHP 5.5.37 (cli) (built: Jun 30 2016 01:19:54) Copyright (c) 1997-2015 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies |
Виполним установку ionCube из системы портов:
# cd /usr/ports/devel/ioncube && make install clean && rehash |
После установки порта получаем инструкции, которые необходимо выполнить:
Edit /usr/local/etc/php.ini or /usr/local/etc/php/extensions.ini -------------------------------------------------------------------------------- NOTE: If you have any Zend Extension already installed - you need put this before |
Добавим в php.ini следующие строки:
[Zend] zend_extension="/usr/local/lib/php/20121212-zts/ioncube/ioncube_loader.so" zend_extension_ts="/usr/local/lib/php/20121212-zts/ioncube/ioncube_loader_ts.so" |
ВАЖНО! Если уже установлены какие-либо Zend Extension, то необходимо добавить эти строки ДО присутствующих строк zend_extension!
Проверяем, подгрузился ли модуль:
# php -v Failed loading /usr/local/lib/php/20121212-zts/ioncube/ioncube_loader.so: /usr/local/lib/php/20121212-zts/ioncube/ioncube_loader.so: Undefined symbol "executor_globals" PHP 5.5.37 (cli) (built: Jun 30 2016 01:19:54) Copyright (c) 1997-2015 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies |
Ошибка! Решаем ее следующим образом. Удаляем строку:
zend_extension="/usr/local/lib/php/20121212-zts/ioncube/ioncube_loader.so" |
А zend_extension_ts изменим в zend_extension. Тоесть, после всех редактирований php.ini получаем следующие добавленные строки:
[Zend] zend_extension="/usr/local/lib/php/20121212-zts/ioncube/ioncube_loader_ts.so" |
Проверяем:
# php -v PHP 5.5.37 (cli) (built: Jun 30 2016 01:19:54) Copyright (c) 1997-2015 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies with the ionCube PHP Loader v5.0.21, Copyright (c) 2002-2016, by ionCube Ltd. |
Все в порядке, ionCube PHP Loader подгружен. Ну и последний штрих... Чтобы модуль был доступен веб-серверу Apache, его необходимо будет перезапустить:
# sh /usr/local/etc/rc.d/apache24 restart |
Последние комментарии
21 неделя 6 дней назад
46 недель 20 часов назад
2 года 46 недель назад
3 года 16 недель назад
3 года 39 недель назад
4 года 2 недели назад
4 года 3 недели назад
4 года 6 недель назад
4 года 18 недель назад
4 года 22 недели назад