1. Please take a little time for this simple survey! Thank you for participating!
    Dismiss Notice
  2. Dear Pleskians, please read this carefully! New attachments and other rules Thank you!
    Dismiss Notice
  3. Dear Pleskians, I really hope that you will share your opinion in this Special topic for chatter about Plesk in the Clouds. Thank you!
    Dismiss Notice

PHP 5.2.3 and ioncube --

Discussion in 'Plesk for Linux - 8.x and Older' started by etoh1973, Aug 8, 2007.

  1. etoh1973

    etoh1973 Guest

    I've been able to install Zend and part of ioncube, but php gives this error message.
    Failed loading /usr/lib/php/ioncube/ioncube_loader_lin_.so: /usr/lib/php/ioncub
    e/ioncube_loader_lin_.so: cannot open shared object file: No such file or direct
    PHP 5.2.3 (cli) (built: Aug 6 2007 11:22:37)
    Copyright (c) 1997-2007 The PHP Group
    Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
    with Zend Extension Manager v1.2.2, Copyright (c) 2003-2007, by Zend Technol
    with Zend Optimizer v3.3.0, Copyright (c) 1998-2007, by Zend Technologies
    [root@ip-72-167-35-123 httpd]#
    -- Well the load failed is found in /etc/php.d/ioncube.ini file. I've tried chanining it to php_ioncube_lin_5.2.so -- crushes the whole system.
  2. faris

    faris Guest


    I can't say for sure that the following advice is correct for your particular installation or not. But here goes:

    Personally I'd get rid of ioncube.ini in /etc/php.d/
    Check to see if you have a zend.ini in there too? That might also cause problems.

    Put all the Zend and Ioncube stuff in /etc/php.ini instead. Then it is all "visible in one place".

    You see it is possible that you are getting conflicts in versions - old stuff not being updated and so on.

    So, once you have removed ioncube.ini....you need to think about what needs to go in php.ini

    The order of things is also vital.

    Now in my setup, it looks like this:

    zend_extension = /usr/local/ioncube/ioncube_loader_lin_5.1.so
    Note that I use Zend382 as the directory name for where my Zend files are located-- you will probably need to use Zend because that's the default. I just always name my Zend directories on the basis of the version being used. It avoids confusion for me. other people think I'm mad.

    But the key thing for you is the ioncibe line. It needs to go before the Zend .so files. And obviously it needs to match the version of PHP you have installed. I put my iconcube stuff in /usr/local/ioncube as you can see. You might have put it somewhere else.

    In other words the above is just a guide. You'll need to modify it to meet your needs and setup.

    Incidentally there's a php file in the ioncube distribution -- ioncube-loader-helper.php -- that helps you out with what needs to go where.

    WARNING: Remember that what I'm suggesting may not apply to your distribution or circumstances. I use Centos 4 (RedHat 4). Other Centos/RedHat-like distributions should be similar. But if you are using something totally different it is possible none of that I'm suggestion is correct.

  3. etoh1973

    etoh1973 Guest

    --Awesome !!

    Thanks, Faris

    The instructions you provided work.. Made the changes to the /etc/php.ini via your example and went to /etc/php.d/ and cp ioncube.ini to ioncube.ini.old and deleted that iconcube.ini and php loaded correctly.
    I did leave that out, after I re-read my post. I did keep going back to etc/php.d during my troubleshooting but I was leary of remove it all together even though it was tryign to load an old lib.

    Thanks, again..
    the helper ioncube-helper.php; sadly I did not look at them but then again. I thought that they were there for "encoding" and "Decoding" the php files when excuating the files. Now, I know why there was a horrible lack of instructions on website for ioncube loader.. its in the helper.php files.. ARGGH!
    Oh, well thanks again!