• Our team is looking to connect with folks who use email services provided by Plesk, or a premium service. If you'd like to be part of the discovery process and share your experiences, we invite you to complete this short screening survey. If your responses match the persona we are looking for, you'll receive a link to schedule a call at your convenience. We look forward to hearing from you!
  • The BIND DNS server has already been deprecated and removed from Plesk for Windows.
    If a Plesk for Windows server is still using BIND, the upgrade to Plesk Obsidian 18.0.70 will be unavailable until the administrator switches the DNS server to Microsoft DNS. We strongly recommend transitioning to Microsoft DNS within the next 6 weeks, before the Plesk 18.0.70 release.
  • The Horde component is removed from Plesk Installer. We recommend switching to another webmail software supported in Plesk.

Update to 11.0.9 destroy Zend Guard Loader

SalvadorS

Regular Pleskian
Hello,

I had Zend Guard Loader installed over Plesk 10.4.4. When I updated to 11.0.9 Zend Guard Loader stop to work.

I found two changes:

1.- Lines I added on php.ini for Zend Guard loader was commented:

[Zend.loader]
;zend_extension=/usr/local/lib/zend/ZendGuardLoader.so
;zend_extension=/usr/lib/php5/20090626/ioncube_loader_lin_5.3.so
;zend_extension=/usr/local/lib/ioncube/ioncube_loader_lin_5.3.so
;zend_optimizer.optimization_level=15
;zend_loader.enable=1
;zend_loader.disable_licensing=0
;zend_loader.obfuscation_level_support=3
;zend_loader.license_path =

2.- Found a file called zend_extensions_psa.ini on /etc/php5/conf.d with this content:

; Following directives were moved from php.ini files by Plesk to avoid load order errors
; Please do not add any zend_extension* or extension directives directly into php.ini

If I add the line:

zend_extension=/usr/local/lib/zend/ZendGuardLoader.so

to:

00-ioncube-loader-5.3.ini under etc/php5/conf.d and restart apache:

root@xxx:/etc/php5/conf.d# /etc/init.d/apache2 restart
Restarting web server: apache2 ... waiting .
root@xxx:/etc/php5/conf.d# php -v
PHP Fatal error: [ionCube Loader] The Loader must appear as the first entry in the php.ini file in Unknown on line 0
root@xxx:/etc/php5/conf.d# top

So if I can´t add lines to php.ini... Can you please tell me what I have to do to fix the problem? Where I hace to add the lines to load Zend Guard loader? Thanks
 
Last edited:
I think it really is just a load order thing, or that you are loading ioncube twice.

In your old php.ini config, Zend looks as though it was being loaded before Ioncube. Or was it? I note there are TWO lines trying to load ioncube. I wonder if one or even both of them were commented out BEFORE you did your upgrade? Or was the Zend one already commented out? It is difficult to tell unless you have a pre-11 copy of your php.ini.

At any rate, the configuration files get loaded from /etc/php5/conf.d (or /etc/php.d/ or wherever it might be for a particular OS) in alphabetical order, as you noted already.

On my system, Ioncube Loader is loaded via ioncube.ini which is therefore BEFORE Zend Guard which is loaded via zendguard.ini

So I would add the Zend stuff to zend_extensions_psa.ini and the ioncube stuff to ioncube.ini.

But don't just copy what you used to have in php.ini. Like I say I think something was commented out before your upgrade - particularly one of those ioncube loader lines. Maybe that's all that's wrong? You have two lines loading ioncube in your 000- file?

Faris.
 
I think Faris Raouf is right - those lines have been commented out beforehand.

Plesk 11 indeed can comment out zend_extension lines in php.ini and move them to conf.d/zend_extensions_psa.ini file. But in such cases it adds following comment in the end of a commented line:

; moved to conf.d/zend_extensions_psa.ini by Plesk

There are no such comments in your php.ini fragment. Therefore I suppose Plesk did nothing here.

Back to your problem. You should not add custom zend_extension lines to conf.d/00-ioncube-loader-5.3.ini file. Instead add them to conf.d/zend_extensions_psa.ini (as comments in this file suggest). This will prevent load order problems since files in conf.d/ are processed in alphabetical order (note that ionCube extension must be loaded first).
 
Back
Top