Article ID: 121962, created on Jun 10, 2014, last review on Apr 5, 2016

  • Applies to:
  • Plesk 12.5 for Linux
  • Plesk 12.0 for Linux
  • Plesk 11.0 for Linux
  • Plesk 11.5 for Linux

Symptoms

When browse PHP website, you get the following error:

    Failed loading /usr/lib64/php/modules/ioncube_loader_lin_5.3.so:  /usr/lib64/php/modules/ioncube_loader_lin_5.3.so: undefined symbol: zend_execute_ex

Or error as below:

    root@www:~# php -v
    Failed loading /usr/lib/php5/20090626/ioncube_loader_lin_5.3.so:  /usr/lib/php5/20090626/ioncube_loader_lin_5.3.so: undefined symbol: php_body_write
    PHP 5.4.28-1+deb.sury.org~precise+1 (cli) (built: May  5 2014 09:32:44)
    Copyright (c) 1997-2014 The PHP Group
    Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies

Other error may be:

    Failed loading /usr/lib/php/ioncube/ioncube_loader_lin_5.2.so:  /usr/lib/php/ioncube/ioncube_loader_lin_5.2.so: undefined symbol: php_body_write
    Cannot load Zend Extension Manager - it was built with configuration 1.2.0, whereas running engine is API220100525,NTS

Cause

Incorrect version of Ioncube loader was chosen for PHP.

Resolution

  1. Search for ioncube in PHP configuration file(s) from command: # php --ini

    For example, you have PHP 5.3.x installed:

    # php --ini
    Configuration File (php.ini) Path: /etc
    Loaded Configuration File:         /etc/php.ini
    Scan for additional .ini files in: /etc/php.d
    Additional .ini files parsed:      /etc/php.d/00-ioncube-loader.ini,
    /etc/php.d/curl.ini,
    ...
    /etc/php.d/zend_extensions_psa.ini,
    /etc/php.d/zip.ini
    
    #grep -i ioncub /etc/php.d/*
    /etc/php.d/00-ioncube-loader.ini:zend_extension=ioncube_loader_lin_5.3.so
    /etc/php.d/ioncube.ini:zend_extension=ioncube_loader_lin_5.2.so <=== ionCube loader for previous PHP 5.2.x version 
    
  2. Download and unzip Ioncube loader according to your PHP version and architecture at ioncube.com.

    wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz

    wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x64.tar.gz

  3. Extract it and move "ioncube_loader_lin_5.X.so" to "/usr/lib/php5/ioncube/" or similar path where PHP modules are located.
  4. Update version/path to Ioncube loader in /etc/php5/conf.d/00-ioncube-loader-5.x.ini.
  5. Restart web server just in case.
  6. Make sure that PHP loads correctly:

    root@www:/tmp/1# php -v
    PHP 5.4.28-1+deb.sury.org~precise+1 (cli) (built: May  5 2014 09:32:44)
    Copyright (c) 1997-2014 The PHP Group
    Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
    with the ionCube PHP Loader v4.6.1, Copyright (c) 2002-2014, by ionCube Ltd.
    

Search Words

error reading data from FastCGI server

502 badgateway

redirect loop

undefined symbol: zend_execute_ex

ioncube

Error with PHP installation

a914db3fdc7a53ddcfd1b2db8f5a1b9c 56797cefb1efc9130f7c48a7d1db0f0c 01bc4c8cf5b7f01f815a7ada004154a2 29d1e90fd304f01e6420fbe60f66f838 0a53c5a9ca65a74d37ef5c5eaeb55d7f 2a5151f57629129e26ff206d171fbb5f e335d9adf7edffca6a8af8039031a4c7 aea4cd7bfd353ad7a1341a257ad4724a 742559b1631652fadd74764ae8be475e

Email subscription for changes to this article
Save as PDF