Introduction
This guide explains how to install the ionCube Loader on a Linux server (Ubuntu, CentOS, or similar). ionCube Loader is a PHP extension required to run PHP applications that have been encoded/encrypted with ionCube — a common requirement for certain commercial PHP scripts.
One update from the original version of this guide: it used PHP 5.3 as its example, which reached end-of-life years ago. The steps below use the same process but with placeholders for your actual, current PHP version — check the official ionCube download page for the loader matching your specific PHP version.
Implementation
I. Prerequisites
- A Linux server (Ubuntu, CentOS, or similar)
- Apache (or another web server) installed
- PHP installed
II. How the Loader Fits In
- PHP loads extensions listed in
php.iniwhen it starts - The ionCube Loader is one such extension — a
.sofile specific to your exact PHP version and architecture - Once loaded, PHP can decode and run ionCube-encoded scripts, which look like garbled text without it

III. Identify Your Server Architecture
arch
x86_64 means 64-bit; i686 or i386 means 32-bit.
IV. Download ionCube Loader
cd /usr/local/src
64-bit:
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
32-bit:
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz
Note: Always check the official downloads page for the current link rather than reusing an old one — download URLs occasionally change, and some older links (including an insecure
http://variant from earlier versions of this guide) no longer work reliably.
V. Extract the Archive
tar xvfz ioncube_loaders_lin_x86-64.tar.gz
VI. Identify Your PHP Version and Extension Directory
Create a phpinfo() test file in your document root:
<?php phpinfo(); ?>
Load it in a browser and note two values:
- PHP Version (e.g.,
8.1) extension_dir— the exact path PHP loads extensions from
VII. Copy the Matching Loader File
Inside the extracted folder, find the .so file matching your PHP version (for example, ioncube_loader_lin_8.1.so for PHP 8.1), then copy it to your extension_dir:
cp ioncube_loader_lin_8.1.so /path/to/your/extension_dir/
Replace the version number and path with the actual values from Step VI — don’t assume they match this example.
VIII. Identify Your php.ini File
The phpinfo() page also shows the Loaded Configuration File path — this is the exact php.ini you need to edit.

IX. Add the Loader to php.ini
vi /path/to/php.ini
Add:
zend_extension=/path/to/your/extension_dir/ioncube_loader_lin_8.1.so
Use the exact path from Steps VI and VII — a mismatched path here is the most common reason the loader fails to appear after restarting.
X. Restart the Web Server
service apache2 restart
(Use service httpd restart on CentOS/RHEL if applicable.)
XI. Verify
Reload the phpinfo() page — you should see an “ionCube Loader” section confirming it’s active.

XII. Conclusion
Installing ionCube Loader comes down to matching three things exactly: your server’s architecture, your specific PHP version, and the correct extension_dir/php.ini paths shown by phpinfo(). Always confirm the current download link from ionCube’s official page rather than reusing an old one, since URLs and supported PHP versions change over time.
Frequently Asked Questions
The loader doesn’t show up after restarting — why? Almost always a mismatched path in php.ini, or the .so file version not matching your actual PHP version. Double-check both against the phpinfo() output.
Do I need a different loader file for each PHP version? Yes — ionCube ships a separate .so file per PHP version and thread-safety mode, and you must use the one matching your exact setup.
Is ionCube Loader still actively maintained? Yes — ionCube continues to release loaders for current PHP versions, unlike some older PHP tools that have been abandoned.
Related Articles
How to add Proxy pass rule to access PHPMyAdmin without port number in URL -Plesk
How to Install phpMyAdmin on Ubuntu
Talk to our experts.
Looking for the right technology solution for your business? Our team of experts can help you with development, cloud, DevOps, design, and a wide range of other technology needs. Get in touch with our team here.