⬡PHPDecompile
⬡PHPDecompile

Professional PHP decoder for ionCube and SourceGuardian files. Decode protected files into clean source code.

Product

  • Pricing
  • Free Trial
  • SourceGuardian Decoder
  • ionCube Decoder
  • Upload Files
  • FAQ

Resources

  • Blog
  • How It Works
  • PHP Decompiler
  • About Us
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  • Refund Policy

© 2026 PHPDecompile. Decoded downloads expire after 7 days.

ionCube · SourceGuardian · PHP 7.4–8.4

Home/Blog/Fixing "SourceGuardian Loader Is Not Installed" Errors

Fixing "SourceGuardian Loader Is Not Installed" Errors

The "SourceGuardian Loader is not installed" error stops encoded PHP from running. Here's what it means and the legitimate steps owners use to fix it.

July 14, 2026·6 min read·By PHPDecompile TeamLast updated: Jul 18, 2026

When a PHP application protected with SourceGuardian will not start and shows a message like "This site requires the SourceGuardian loader," or "The SourceGuardian loader is not installed," the application code is not broken. What is missing is the runtime component PHP needs before it can execute SourceGuardian-encoded files. This article explains the error and the legitimate ways an owner gets their own software running again.

What the Message Means

Some commercial PHP software is encoded with SourceGuardian so the raw source is not directly readable. To run those files, PHP needs the SourceGuardian Loader, a PHP extension that hooks into the interpreter and lets it execute encoded files.

The "not installed" message means PHP tried to run an encoded file but that extension was not active in the current PHP environment. It is not a licensing message and not an application bug. It is an environment gap: the runtime component is absent.

Because the Loader is tied to the PHP interpreter, the error commonly appears after a server migration, a PHP upgrade, or when moving the application to a machine that never had the Loader set up.

Check What PHP Actually Sees

Before changing anything, confirm which PHP runs your app and whether the Loader is present. The reliable way is a phpinfo() page:

  1. Create info.php containing <?php phpinfo();.
  2. Load it in the browser your application uses.
  3. Search for SourceGuardian.

If the Loader is active, a "SourceGuardian" section appears with a version. If it is absent, the Loader is not loaded for that PHP. Delete info.php afterward, as it exposes server details. From the command line, php -v shows the CLI version, which can differ from the web version, so check the context that is failing.

Common Causes

  • The Loader was never installed on this server; fresh servers do not include it.
  • PHP was upgraded and no matching Loader was configured for the new version.
  • The wrong PHP is running. Hosts often run several PHP versions; the Loader may be active for one but not the one your site uses.
  • The extension line is missing or commented out in the active php.ini.
  • A migration carried the application files but not the server-level Loader configuration.

How To Fix It

The goal is always to make the correct Loader available to the exact PHP version your application uses. Your approach depends on your level of server access.

On shared or managed hosting, the simplest path is to ask your host to enable the SourceGuardian Loader for your account and to confirm which PHP version it applies to. Many hosts support it. If your panel has an extension manager, you may be able to enable it yourself.

On a server you manage, install the Loader package that matches your operating system and PHP version, reference it from the active php.ini, and restart the web server and PHP-FPM. SourceGuardian provides Loader files per PHP version, so pick the one matching your running PHP. Always use the official Loader from the vendor, never a copy from an unknown source.

After enabling it, reload your phpinfo() page and confirm the SourceGuardian section now appears, then restart the application. The error should be gone.

A Note on Build Variants

The SourceGuardian Loader, like other native extensions, comes in build variants that must match your PHP. Two settings matter most: thread safety and architecture. A thread-safe Loader on a non-thread-safe PHP, or a 32-bit Loader on a 64-bit PHP, will not load even when the version number looks right. You can read both settings straight from the phpinfo() page: look for the "Thread Safety" field and the architecture line near the top. When you download the Loader, choose the variant that matches those values as well as the PHP version. Getting the variant wrong is a frequent reason the Loader appears to be installed yet the error stubbornly persists.

If the Error Persists

If the Loader is installed but the message continues, the usual cause is a mismatch between the Loader you enabled and the PHP actually serving requests. Confirm that the phpinfo() served by the web server, not just the CLI, shows SourceGuardian, and that only one PHP version is active for your site. We cover version mismatches in a companion article on SourceGuardian being "not encoded for this version of PHP."

If instead you see a message about an expired file, a registration key, or a licensed domain, that is licensing, not a Loader problem, and the only correct step is to contact the vendor to renew or reactivate. This site does not describe any way to bypass a license check.

For Owners Tired of Loader Dependencies

If you own the software, or have written permission from whoever does, and the recurring "install the right Loader, upgrade PHP, break it, repeat" cycle has worn thin, there is a longer-term option. Recovering your own readable PHP source removes the SourceGuardian dependency entirely, so the application runs as plain PHP on any compatible server. Our SourceGuardian decoder and general PHP decompiler are built for exactly this, and our guide on how to remove a SourceGuardian loader dependency walks through the reasoning. Only recover software you own or are authorized to recover.

FAQ

Does installing the Loader change my code? No. The Loader is a runtime PHP extension. It does not modify your encoded files; it only lets PHP run them.

Why did this appear after a PHP upgrade? The Loader is specific to each PHP version. Upgrading PHP without configuring a matching Loader leaves encoded files with nothing to execute them.

Can I disable the encoded parts to get the site up? No. The encoded files are your application's real code. Enable the Loader, or recover your own source so the Loader is no longer required.

My host doesn't support SourceGuardian. Now what? Move to a host that does, or recover your own source to remove the dependency. Both are legitimate.

Is this the same as a license error? No. "Not installed" is an environment issue. Anything about expiry, keys, or domains is licensing, which only the vendor can resolve. Want to remove the dependency for good? Start a free trial or create an account.

#sourceguardian#loader#troubleshooting
Share:𝕏 Tweetin LinkedInReddit✉ Email
← Previous
How to Enable the ionCube Loader in Plesk
Next →
SourceGuardian "Not Encoded for This Version of PHP": Causes and Fixes

Related Articles

Recovering Source From a SourceGuardian WordPress Plugin

Recover readable PHP from a SourceGuardian WordPress plugin you own. Owner-focused source recovery to regain control of your site's code and roadmap.

SourceGuardian WHMCS Module Source Recovery

Own a SourceGuardian-protected WHMCS module? Recover its readable PHP source so you can audit, maintain, and safely update your billing automation.

SourceGuardian Magento Extension Source Recovery

Recover readable source from a SourceGuardian Magento extension you own, so you can audit, patch, and keep your store compatible across Magento upgrades.

Decoder Guides

SourceGuardian Decoder

Recover SourceGuardian protected PHP files online.

ionCube Decoder

Recover ionCube protected PHP files online.

PHP Decompiler

Use one workflow for authorized PHP source recovery.

Ready to decode ionCube and SourceGuardian files?

Try PHPDecompile free. No credit card required.

🚀 Start Free TrialView Pricing
Table of Contents
What the Message MeansCheck What PHP Actually SeesCommon CausesHow To Fix ItA Note on Build VariantsIf the Error PersistsFor Owners Tired of Loader DependenciesFAQ