After applying WPB patch from KB 130312 site editing screen does not load, but displays the following error instead:
Site error: the file <..>/htdocs/include/SB/ConfigDefaults.php requires the ionCube PHP Loader ioncube_loader_lin_5.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.
On the node where WPB centralized instance resides one may see that IonCube extension is not loaded in sw-engine:
# php -m | grep ion ionCube Loader # sw-engine-cgi -m | grep ion <no result>
Sw-engine is a special version of PHP interpreter which is required to run Web Presence Builder. IonCube is a PHP extension required to execute encrypted WPB scripts.
IonCube extension is not loaded by sw-engine interpreter. sw-engine is not compiled to scan additional directories and thus misses IonCube definition in
# php -i ... Scan this dir for additional .ini files => /etc/php.d Additional .ini files parsed /etc/php.d/ioncube_loader.ini # sw-engine -i Scan this dir for additional .ini files => (none) Additional .ini files parsed => (none)
IonCube extension should be added to
sw-engine by any possible way. There are several possibilities, for example:
Via setting environment variable
/etc/php.d. That could be done any applicable way on OS environment configuration level or via Apache's mod_env's SetEnv directive (for example, applicable to vhost config).
Add the following line to
And to overcome potential issues of double-initialization of ionCube in ordinary PHP, exclude original ionCube INI from initialization (since it will be forcibly initialized in PHP):
# mv /etc/php.d/ioncube_loader.ini /etc/php.d/ioncube_loader.ini.bak
That is safe and will not change the behavior of other webspaces.