The ionCube PHP Loader is required to run ionCube-protected PHP scripts. If you're seeing this error, it means ionCube Loader is missing from your PHP installation. This comprehensive guide covers installation methods for all major hosting environments.
1 Check If ionCube Loader Is Installed
Before installing, check if ionCube Loader is already available on your system.
For Shared Hosting / cPanel Users
- Log in to cPanel.
- Go to "Select PHP Version" (or "PHP Extensions" under "Software").
- Look for "ionCube Loader" in the extensions list.
- If it's enabled, your PHP script should work. If not, enable it (see next section).
For VPS or SSH Users
Run the following command via SSH:
Expected Output (if ionCube is installed):
If the "with the ionCube PHP Loader" line is missing, ionCube needs to be installed.
Alternative Check Methods
php -m | grep -i ioncube
# Check PHP info
php -i | grep -i ioncube
# Test ionCube function
php -r "if (function_exists('ioncube_loader_version')) { echo 'ionCube version: ' . ioncube_loader_version(); } else { echo 'ionCube NOT loaded'; }"
2 Install ionCube Loader in cPanel
Method 1: Using PHP Extensions
- Log in to your cPanel account.
- Navigate to "Software" > "Select PHP Version".
- Select your desired PHP version from the dropdown.
- Click the "Extensions" tab/button.
- Scroll down and find "ionCube Loader" in the list.
- Check the checkbox next to "ionCube Loader".
- Click "Save" or "Apply".
- Restart Apache or LiteSpeed (usually automatic).
Method 2: Using MultiPHP Manager (Older cPanel)
- Go to "Software" > "MultiPHP Manager".
- Select your domain from the list.
- Choose PHP version from dropdown.
- Click "Save".
- Go to "Software" > "MultiPHP INI Editor".
- Find and enable ionCube Loader extension.
Method 3: Using WHM (Root Access)
- Log in to WHM as root.
- Navigate to "Home" > "Software" > "EasyApache 4".
- Click "Customize" for current profile.
- Go to "PHP Extensions" tab.
- Search for "ionCube" and enable it.
- Click "Review" then "Provision".
3 Install ionCube Loader on a VPS (Manual Installation)
If you have root SSH access to your VPS, follow these manual installation steps.
Step 1: Download ionCube Loader
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
# For 32-bit systems
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz
Step 2: Extract the Archive
cd ioncube
Step 3: Find Your PHP Version
Example Output:
Step 4: Find PHP Extensions Directory
Example Output:
Step 5: Move ionCube Loader to Extensions Directory
Copy the correct loader file for your PHP version:
• PHP 8.3 > ioncube_loader_lin_8.3.so
• PHP 8.2 > ioncube_loader_lin_8.2.so
• PHP 8.1 > ioncube_loader_lin_8.1.so
• PHP 8.0 > ioncube_loader_lin_8.0.so
• PHP 7.4 > ioncube_loader_lin_7.4.so
Step 6: Set Correct Permissions
Step 7: Enable ionCube Loader in php.ini
php --ini | grep "Loaded Configuration File"
Example Output:
- Apache:
/etc/php/8.1/apache2/php.ini - Nginx with PHP-FPM:
/etc/php/8.1/fpm/php.ini
Edit the correct php.ini file:
Add this line in the Dynamic Extensions section:
Step 8: Restart Web Server
sudo systemctl restart apache2
# For Nginx with PHP-FPM
sudo systemctl restart php8.1-fpm
sudo systemctl restart nginx
4 Install ionCube Loader in Plesk
Method 1: Using Plesk PHP Handlers
- Log in to Plesk Panel.
- Go to "Tools & Settings" > "PHP Settings".
- Select your PHP version from the list.
- Click "Extensions" tab.
- Find "ionCube Loader" in the list.
- Enable it by checking the checkbox.
- Click "OK" or "Apply".
- Restart Apache/Nginx from Services Management.
Method 2: Manual Installation via SSH
For Plesk Obsidian/Onix:
cd /opt/plesk/php/8.1/lib/php/modules/
# Download ionCube loader
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
tar -xvzf ioncube_loaders_lin_x86-64.tar.gz
cp ioncube/ioncube_loader_lin_8.1.so .
# Edit Plesk PHP configuration
echo "zend_extension=/opt/plesk/php/8.1/lib/php/modules/ioncube_loader_lin_8.1.so" \
>> /opt/plesk/php/8.1/etc/php.d/ioncube.ini
5 Install ionCube Loader in DirectAdmin
Method 1: Using CustomBuild 2.0
cd /usr/local/directadmin/custombuild
./build update
./build set ioncube yes
./build ioncube
./build php n
Method 2: Manual Installation
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
tar -xvzf ioncube_loaders_lin_x86-64.tar.gz
# Copy to PHP modules directory
cd ioncube
cp ioncube_loader_lin_8.1.so /usr/local/lib/php/extensions/
# Create configuration file
echo "zend_extension=/usr/local/lib/php/extensions/ioncube_loader_lin_8.1.so" \
> /usr/local/lib/php.conf.d/10-ioncube.ini
6 Verify ionCube Loader Installation
Method 1: Command Line Verification
Expected Output:
Method 2: Create PHP Info File
- Create a file named
info.phpin your web root:echo "<?php phpinfo(); ?>" > /var/www/html/info.php - Access it in browser:
https://yourdomain.com/info.php
- Search for "ionCube Loader" using Ctrl+F
- You should see ionCube information
- Remove after testing:
rm /var/www/html/info.php
Method 3: Test ionCube Function
7 Troubleshooting ionCube Loader Issues
| Issue | Solution |
|---|---|
| "Site error: ionCube Loader needs to be installed" | Check php.ini configuration. Verify correct loader file is loaded for your PHP version. |
| ionCube not showing in PHP info | Restart Apache: sudo systemctl restart apache2 or PHP-FPM: sudo systemctl restart php8.1-fpm |
| Wrong PHP version detected | Ensure you installed correct ionCube loader for your PHP version. Check with php -v. |
| PHP Fatal error: Unable to load dynamic library | Check zend_extension path in php.ini. Verify file exists with correct permissions. |
| ionCube works in CLI but not browser | Edit web server's php.ini (apache2/fpm), not just cli php.ini. |
| cPanel: ionCube option not available | Contact hosting provider. May need to install via WHM EasyApache 4. |
| Multiple PHP versions | Install ionCube for each PHP version. Edit corresponding php.ini files. |
8 Summary
| Environment | Installation Method |
|---|---|
| cPanel | "Select PHP Version" > "Extensions" > Enable ionCube Loader |
| VPS/SSH | Download .tar.gz, extract, copy .so file, edit php.ini, restart server |
| Plesk | "Tools & Settings" > "PHP Settings" > Enable ionCube extension |
| DirectAdmin | CustomBuild: ./build set ioncube yes then ./build ioncube |
| WHM | EasyApache 4 > PHP Extensions > Enable ionCube Loader |
| Manual Check | php -v or php -m | grep ionCube |
| Verification | Create info.php with phpinfo(); and search for ionCube |
Now ionCube Loader is installed and your website should work without errors!


