Blank page after activating ImpulseCore
WHMCS shows a blank page right after you click Activate on ImpulseCore. Almost always missing or wrong-version ionCube Loader — install it for your PHP version and restart PHP-FPM.
Last updated 20 days ago
Blank page after activating ImpulseCore
What you're seeing
You clicked Activate on ImpulseCore in System Settings → Addon Modules and WHMCS returned a blank page — no error message, no inline notice, just empty HTML. Refreshing the page either repeats the blank result or eventually shows a generic "site error" page.
Why it happens
ImpulseCore ships some files that are ionCube-encoded. PHP needs the matching ionCube Loader extension to execute them. If the loader is missing, or is the wrong version for the running PHP, PHP refuses to parse the file and dies before it can emit anything to the browser. WHMCS's error handler never gets a chance to render a friendly message.
This usually appears the first time Core is activated because that's the first time PHP tries to load Core's encoded files.
Fix
- Confirm ionCube isn't loaded for your PHP. From the WHMCS server shell:
No output means the loader isn't enabled for whichever PHP your WHMCS uses. If you have multiple PHP versions installed, check the right one — for example:php -m | grep -i ionCubeSubstitute your PHP CLI binary. On Plesk:/opt/plesk/php/8.3/bin/php -m | grep -i ionCube/opt/plesk/php/8.3/bin/php. On cPanel:/opt/cpanel/ea-php83/root/usr/bin/php. On a vanilla LAMP install:/usr/bin/phpor whateverwhich phpreturns. - Install the loader for your PHP version.
- Plesk: Tools & Settings → PHP Settings → click your PHP version → enable ionCube.
- cPanel: WHM → Server Configuration → PHP Selector → enable ionCube (or via MultiPHP Manager, depending on cPanel version). EasyApache 4 → Customize → PHP Extensions → enable
ioncube_loaderworks on older WHM builds. - Manual: Download the ionCube Loader matching your PHP version + OS from ioncube.com, drop the
.sointo the PHP extensions dir, addzend_extension=ioncube_loader.sotophp.ini, restart PHP-FPM.
- Restart PHP-FPM. The loader is only registered on process start. PHP-FPM has to come up fresh:
systemctl restart plesk-php83-fpm # Plesk systemctl restart cpanel-php83 # cPanel systemctl restart php8.3-fpm # vanilla LAMP (Debian/Ubuntu); adjust unit name for your distro - Re-confirm ionCube is loaded. Run
php -m | grep -i ionCubeagain. You should see one line listing the loader. The version number inphp -vwill also include an ionCube banner. - Activate ImpulseCore. Go back to System Settings → Addon Modules and click Activate on ImpulseCore. The activate hook now runs cleanly — creates the
mod_impulsecore_*tables, seeds defaults, self-registers.
How to confirm it worked
Open Addons → ImpulseCore in WHMCS admin. The Overview tab renders with the version number, an (empty) Modules-registered table, and the Audit log showing the activation event itself.
Why no error message?
PHP's behaviour when it can't parse an encoded file isn't a graceful exception — the parser bails before any of WHMCS's error handlers register. The "blank page" symptom is the same one you'd get from a syntax error in a bootstrap file. ionCube is the most common cause when the file in question is from an ionCube-encoded module.