Install PHP Ioncube Loaders in Debian Linux System. Ioncube is used as the encryption and decryption utility for PHP applications by which we can keep safe our data. It also can restrict PHP application to execute unauthorized. It also assists in speeding up the pages that are served. IonCube loaders are used for decoding encoded files while running on the webserver. read more details on official site. This tutorial will help you to install the PHP ionCube Loaders on Debian Linux system.
- Running Debian server with shell access
- Pre installed Apache and PHP
Step 1 – Download ionCube Loader
First of all download the latest ioncube loaders php modules from ioncube from ioncube download page. Alternatively you can also use following command to download ioncube loaders.
Then, extract the downloaded archive under /usr/local directory.
tar xzf ioncube_loaders_lin_x86-64.tar.gz -C /usr/local
Step 2 – Enable ionCube Loader in PHP
Now, find the active PHP version on your system. To find php.ini file you can use the following command.
php -i | grep php.ini Configuration File (php.ini) Path => /etc/php/7.3/cli Loaded Configuration File => /etc/php/7.3/cli/php.ini
The above command will show the configuration file for PHP CLI. You need to edit php.ini for CLI and well as Apache. You can find this with
phpinfo(); php function.
By default the configuration file locations are:
sudo vim /etc/php/7.3/cli/php.ini #for PHP CLI sudo vim /etc/php/7.3/fpm/php.ini #for PHP FPM sudo vim /etc/php/7.3/apache/php.ini #for PHP with Apache
Edit all the above configuration files and append the below code to the end of the files.
zend_extension = /usr/local/ioncube/ioncube_loader_lin_7.3.so
Replace /usr/local/ioncube/ioncube_loader_lin_7.3.so file with your matching PHP version file.
Step 3 – Restart Apache & PHP-FPM Service
After making changes in php.ini for Apache or PHP-FPM, you need to restart the following services.
sudo systemctl restart apache2 #for PHP with Apache sudo systemctl restart php7.3-fpm #for PHP FPM
Step 4 – Verify ionCube Loader
Let’s verify the installation and configuration of Ioncube PHP module. Run
php -m command on shell.
php -v PHP 7.3.6-1+0~20190531112640.39+buster~1.gbp6131b7 (cli) (built: May 31 2019 11:26:40) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.3.6, Copyright (c) 1998-2018 Zend Technologies with the ionCube PHP Loader + ionCube24 v10.3.7, Copyright (c) 2002-2019, by ionCube Ltd. with Zend OPcache v7.3.6-1+0~20190531112640.39+buster~1.gbp6131b7, Copyright (c) 1999-2018, by Zend Technologies
Alternatively you can also put a info.php file on your web server document root with following content and check the status by access info.php in web browser.
Then access info.php in a web browser to view detailed information.
I see remi package (for Redhat & Centos) has php-ioncube-loader module, convenient for quick and safe deployment of PHP on machines. Debian 9 and 10, now do have PHP packages and modules for the same purpose, but I did not find similar module. I tried to search, say ioncube-loader from Debian official package page and failed. Does Debian provide such an equivalent?
In following code, you said “Edit php.ini file and add the following line at the end of the file.”
can you please guide, which line to add at the end of the file?
Search PHP configuration file on your system. Edit php.ini file and add the following line at the end of the file. To find php.ini file you can use the following command.
php -i | grep php.ini
Configuration File (php.ini) Path => /etc/php/7.3/cli
Loaded Configuration File => /etc/php/7.3/cli/php.ini