Fli
10-01-2013, 11:31 AM
You might received an Ioncube error on your website:
*.php requires the ionCube PHP Loader ioncube_loader_lin_5.2/3.so to be installed by the website operator. If you are the website operator please use the ionCube Loader Wizard to assist with installation.
The solution is that You as the server administrator should install Ioncube Loader PHP module.
1. Dicover php.ini path:
A) php -r \@phpinfo\(\)\;|grep php.ini
B) php --ini|grep php.ini
2. Once you know path to php.ini your comand to enable ioncube module in PHP.ini will look similar to this:
echo "zend_extension = /usr/local/ioncube/ioncube_loader_lin_5.3.so" >> /etc/php.ini
(5.4 is just an example, it depends on what version your website script is requesting - per the error message you got on webpage.
/etc/php.ini is just an example, use real path found above)
3. uname -a
can tell if you have 64bit version, if yes, then the commands to unpack ioncube modules into /usr/local/ are:
cd /usr/local;wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz;tar xfz ioncube_loaders_lin_x86-64.tar.gz;rm -f ioncube_loaders_lin_x86-64.tar.gz
4. chmod 755 /usr/local/ioncube/ioncube_loader_lin_5.3.so
5. restart webserver:
service httpd restart;service php-fpm restart
or on Debian based: /etc/init.d/apache2 reload
6. Ioncube error should disappear meaning it should work.
If it is not working, another approach is to enable the module in different .ini file:
echo "zend_extension = /usr/lib64/php/modules/ioncube_loader_lin_5.3.so" >> /etc/php.d/00-ioncube.ini
(highlighted path replace by one returned by the command:
php -i | grep extension_dir
)
----------------------- OTHER APPROACHES: ----------------------
Someone adviced these commands on CentOS Linux:
wget -q -O - http://www.atomicorp.com/installers/atomic |sh
yum install php-ioncube-loader -y
but i did not tried it yet. I used method described below:
Do You have 64 bit or 32 bit Linux?
How to install it, here is tutorial on how i installed it on Linux 64bit OS. to learn if your system is 32 or 64 bit, do command:
uname -a
a the end of result, i can see: "x86_64 x86_64 x86_64 GNU/Linux"
If you see _64, you have 64 bit Linux.
64 bit Linux Ioncube install:
in internet browser add your domain or server IP address and hit enter. Some webpage should then load.
now go to your server website directory, like in my case it is: /var/www/html
cd /var/www/html
or any other where are your website files. (example: /home/username/public_html ; /var/zpanel/hostdata/zadmin/public_html ...)
once you are in the website directory, download ioncube package, extract it:
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz;tar xvzf ioncube_loaders_lin_x86-64.tar.gz;cd ioncube;ls;
now in web browser go to your server IP and or your domain and add /ioncube/loader-wizard.php after it, so you open the folder and file you just created in previous command. Example: 1.1.1.1/ioncube/loader-wizard.php . You can follow manual on /ioncube/loader-wizard.php page
Then you can install ioncube 5.2 (or other version that your php script requesting) by commands:
cp ioncube_loader_lin_5.2.so /usr/lib64/php/modules;touch 20ioncube.ini;echo "zend_extension = /usr/lib64/php/modules/ioncube_loader_lin_5.2.so" > 20ioncube.ini;mv 20ioncube.ini /etc/php.d;service httpd restart
OR if your script require any other Ioncube version beside 5.2, just replace 5.2 in above command by required version number
32bit Linux Ioncube install:
in internet browser add your domain or server IP address and hit enter. Some webpage should then load.
now go to your server website directory, like in my case it is: /var/www/html
cd /var/www/html
or any other where are your website files. (example: /home/username/public_html ; /var/zpanel/hostdata/zadmin/public_html ...)
once you are in the website directory, download ioncube package, extract it:
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz;tar xvzf ioncube_loaders_lin_x86.tar.gz;cd ioncube;ls;
now in web browser go to your server IP and or your domain and add /ioncube/loader-wizard.php after it, so you open the folder and file you just created in previous command. Example: 1.1.1.1/ioncube/loader-wizard.php . You can follow manual on /ioncube/loader-wizard.php page
Then you can install ioncube 5.2 (or other version that your php script requesting) by commands:
cp ioncube_loader_lin_5.2.so /usr/lib/php/modules;touch 20ioncube.ini;echo "zend_extension = /usr/lib/php/modules/ioncube_loader_lin_5.2.so" > 20ioncube.ini;mv 20ioncube.ini /etc/php.d;service httpd restart
OR if your script require any other Ioncube version beside 5.2, just replace 5.2 in above command by required version number
Additional notes on manual universal Linux Ioncube install
The ioncube install command mentioned above is working in my case with following paths:
/usr/lib/php/modules
/etc/php.d
Your Linux may use different paths.
Example, following command should list your directory where one can copy ioncube php module (ie: ioncube_loader_lin_5.2.so):
# php -i | grep extension_dir
extension_dir => /usr/lib64/php/modules => /usr/lib64/php/modules
Then following command should list global php configuration file:
# php -i | grep php.ini
Configuration File (php.ini) Path => /etc
Loaded Configuration File => /etc/php.ini
In that file one can add following line to instruct webserver to load Ioncube module:
zend_extension = /usr/lib/php/modules/ioncube_loader_lin_5.2.so
& then restart webserver(service httpd restart ...)
----
if you got any errors during install, and dont know how to solve them, try to paste them here
*.php requires the ionCube PHP Loader ioncube_loader_lin_5.2/3.so to be installed by the website operator. If you are the website operator please use the ionCube Loader Wizard to assist with installation.
The solution is that You as the server administrator should install Ioncube Loader PHP module.
1. Dicover php.ini path:
A) php -r \@phpinfo\(\)\;|grep php.ini
B) php --ini|grep php.ini
2. Once you know path to php.ini your comand to enable ioncube module in PHP.ini will look similar to this:
echo "zend_extension = /usr/local/ioncube/ioncube_loader_lin_5.3.so" >> /etc/php.ini
(5.4 is just an example, it depends on what version your website script is requesting - per the error message you got on webpage.
/etc/php.ini is just an example, use real path found above)
3. uname -a
can tell if you have 64bit version, if yes, then the commands to unpack ioncube modules into /usr/local/ are:
cd /usr/local;wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz;tar xfz ioncube_loaders_lin_x86-64.tar.gz;rm -f ioncube_loaders_lin_x86-64.tar.gz
4. chmod 755 /usr/local/ioncube/ioncube_loader_lin_5.3.so
5. restart webserver:
service httpd restart;service php-fpm restart
or on Debian based: /etc/init.d/apache2 reload
6. Ioncube error should disappear meaning it should work.
If it is not working, another approach is to enable the module in different .ini file:
echo "zend_extension = /usr/lib64/php/modules/ioncube_loader_lin_5.3.so" >> /etc/php.d/00-ioncube.ini
(highlighted path replace by one returned by the command:
php -i | grep extension_dir
)
----------------------- OTHER APPROACHES: ----------------------
Someone adviced these commands on CentOS Linux:
wget -q -O - http://www.atomicorp.com/installers/atomic |sh
yum install php-ioncube-loader -y
but i did not tried it yet. I used method described below:
Do You have 64 bit or 32 bit Linux?
How to install it, here is tutorial on how i installed it on Linux 64bit OS. to learn if your system is 32 or 64 bit, do command:
uname -a
a the end of result, i can see: "x86_64 x86_64 x86_64 GNU/Linux"
If you see _64, you have 64 bit Linux.
64 bit Linux Ioncube install:
in internet browser add your domain or server IP address and hit enter. Some webpage should then load.
now go to your server website directory, like in my case it is: /var/www/html
cd /var/www/html
or any other where are your website files. (example: /home/username/public_html ; /var/zpanel/hostdata/zadmin/public_html ...)
once you are in the website directory, download ioncube package, extract it:
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz;tar xvzf ioncube_loaders_lin_x86-64.tar.gz;cd ioncube;ls;
now in web browser go to your server IP and or your domain and add /ioncube/loader-wizard.php after it, so you open the folder and file you just created in previous command. Example: 1.1.1.1/ioncube/loader-wizard.php . You can follow manual on /ioncube/loader-wizard.php page
Then you can install ioncube 5.2 (or other version that your php script requesting) by commands:
cp ioncube_loader_lin_5.2.so /usr/lib64/php/modules;touch 20ioncube.ini;echo "zend_extension = /usr/lib64/php/modules/ioncube_loader_lin_5.2.so" > 20ioncube.ini;mv 20ioncube.ini /etc/php.d;service httpd restart
OR if your script require any other Ioncube version beside 5.2, just replace 5.2 in above command by required version number
32bit Linux Ioncube install:
in internet browser add your domain or server IP address and hit enter. Some webpage should then load.
now go to your server website directory, like in my case it is: /var/www/html
cd /var/www/html
or any other where are your website files. (example: /home/username/public_html ; /var/zpanel/hostdata/zadmin/public_html ...)
once you are in the website directory, download ioncube package, extract it:
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz;tar xvzf ioncube_loaders_lin_x86.tar.gz;cd ioncube;ls;
now in web browser go to your server IP and or your domain and add /ioncube/loader-wizard.php after it, so you open the folder and file you just created in previous command. Example: 1.1.1.1/ioncube/loader-wizard.php . You can follow manual on /ioncube/loader-wizard.php page
Then you can install ioncube 5.2 (or other version that your php script requesting) by commands:
cp ioncube_loader_lin_5.2.so /usr/lib/php/modules;touch 20ioncube.ini;echo "zend_extension = /usr/lib/php/modules/ioncube_loader_lin_5.2.so" > 20ioncube.ini;mv 20ioncube.ini /etc/php.d;service httpd restart
OR if your script require any other Ioncube version beside 5.2, just replace 5.2 in above command by required version number
Additional notes on manual universal Linux Ioncube install
The ioncube install command mentioned above is working in my case with following paths:
/usr/lib/php/modules
/etc/php.d
Your Linux may use different paths.
Example, following command should list your directory where one can copy ioncube php module (ie: ioncube_loader_lin_5.2.so):
# php -i | grep extension_dir
extension_dir => /usr/lib64/php/modules => /usr/lib64/php/modules
Then following command should list global php configuration file:
# php -i | grep php.ini
Configuration File (php.ini) Path => /etc
Loaded Configuration File => /etc/php.ini
In that file one can add following line to instruct webserver to load Ioncube module:
zend_extension = /usr/lib/php/modules/ioncube_loader_lin_5.2.so
& then restart webserver(service httpd restart ...)
----
if you got any errors during install, and dont know how to solve them, try to paste them here