Article ID: 121962, created on Mar 6, 2015, last review on Mar 6, 2015

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

Symptômes

Lorsque vous naviguez sur le site Web PHP, l'erreur suivante s'affiche :

    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

Ou :

    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

Ou :

    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

La mauvaise version du chargeur Ioncube a été choisie pour PHP.

Résolution

1) Recherchez ioncube dans les fichiers de configuration PHP à l'aide de la commande : # php --ini.

Par exemple, PHP 5.3.x est installé :

    # 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) Téléchargez le chargeur Ioncube correspondant à votre version de PHP sous ioncube.com.

3) Extrayez-la et placez "ioncube_loader_lin_5.X.so" dans "/usr/lib/php5/ioncube/" ou un chemin similaire où se trouvent les modules PHP.

4) Mettez à jour la version / le chemin vers le chargeur Ioncube dans /etc/php5/conf.d/00-ioncube-loader-5.x.ini.

5) Redémarrez le serveur Web, par précaution.

6) Vérifiez si PHP charge correctement :

    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.

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

Email subscription for changes to this article
Save as PDF