本教程适用于以下操作系统版本
- Debian 11(Bullseye)
- Debian 9(Stretch)
- Debian 7(Wheezy)
本页内容
- 环境要求
- 开始之前
- 安装 IonCube Loader(Apache mod_php、PHP-FPM、PHP CGI、PHP CLI 命令行 PHP)
- 测试 IonCube Loader
- Apache mod_php
- PHP-FPM
- PHP CGI
- PHP CLI(命令行 PHP)
IonCube 是一个 PHP 扩展,能够在运行时解码经过加密保护的 PHP 文件。商业 PHP 程序供应商使用 IonCube 编码器来保护应用程序,而在本教程中安装的 loader 是在你的服务器上运行 IonCube 加密文件所必需的。IoncubeLoader 可免费使用。IonCube loader 通过将你的 PHP 转换为字节码,能够提高网站的加载速度,并防止他人窃取源代码。
在本教程中,我们将介绍如何在 Debian 11 上安装 IonCube Loader。
环境要求
- 一台运行 Debian 11 且已安装 PHP 的服务器(例如已搭建 LAMP 或 LEMP 环境)。
- 一个拥有 sudo 权限的非 root 用户。
开始之前
在开始之前,请使用以下命令更新服务器上已安装的所有软件包:
sudo apt update -y
sudo apt upgrade -y
安装 IonCube Loader
首先,你需要从官方网站下载最新版本的 IonCube Loader。可以使用以下命令将 IonCube loader 下载到系统的 /tmp 目录:
cd /tmp
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

下载完成后,使用以下命令解压下载的文件:
tar -xvzf ioncube_loaders_lin_x86-64.tar.gz
默认情况下,文件会被解压到一个名为 ioncube 的文件夹中。
现在,切换到 ioncube 文件夹并运行 ls 命令查看所有扩展:
cd ioncube
ls
你应当能看到对应不同 PHP 版本的各种 ioncube loader 文件,如下所示:

ioncube_loader_lin_4.1.so ioncube_loader_lin_5.2.so ioncube_loader_lin_7.0.so ioncube_loader_lin_8.1.so ioncube_loader_lin_4.2.so ioncube_loader_lin_5.2_ts.so ioncube_loader_lin_7.0_ts.so ioncube_loader_lin_8.1_ts.so ioncube_loader_lin_4.3.so ioncube_loader_lin_5.3.so ioncube_loader_lin_7.1.so LICENSE.txt ioncube_loader_lin_4.3_ts.so ioncube_loader_lin_5.3_ts.so ioncube_loader_lin_7.1_ts.so loader-wizard.php ioncube_loader_lin_4.4.so ioncube_loader_lin_5.4.so ioncube_loader_lin_7.2.so README.txt ioncube_loader_lin_4.4_ts.so ioncube_loader_lin_5.4_ts.so ioncube_loader_lin_7.2_ts.so USER-GUIDE.pdf ioncube_loader_lin_5.0.so ioncube_loader_lin_5.5.so ioncube_loader_lin_7.3.so USER-GUIDE.txt ioncube_loader_lin_5.0_ts.so ioncube_loader_lin_5.5_ts.so ioncube_loader_lin_7.3_ts.so ioncube_loader_lin_5.1.so ioncube_loader_lin_5.6.so ioncube_loader_lin_7.4.so ioncube_loader_lin_5.1_ts.so ioncube_loader_lin_5.6_ts.so ioncube_loader_lin_7.4_ts.so
现在,你需要根据服务器上安装的 PHP 版本,选择正确的 ioncube loader 文件。运行以下命令查看服务器上安装的 PHP 版本:
php -v
输出:

PHP 7.4.33 (cli) (built: Nov 8 2022 11:36:34) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies with Zend OPcache v7.4.33, Copyright (c), by Zend Technologies
在上述输出中,你可以看到已安装的 PHP 版本为 PHP 7.4.33。因此,你需要将 ioncube_loader_lin_7.4.so 文件从 ioncube 目录复制到 PHP 扩展目录。
首先,使用以下命令查找 PHP 扩展目录的位置:
php -i | grep extension_dir
你应当看到如下输出:
extension_dir => /usr/lib/php/20190902 => /usr/lib/php/20190902
现在,使用以下命令将 ioncube loader 文件复制到 PHP 扩展目录(/usr/lib/php/20151012):
cd ioncube
cp ioncube_loader_lin_7.4.so /usr/lib/php/20190902/
接下来,你需要编辑 php.ini 文件并添加 ioncube 扩展的路径。需要编辑的文件取决于你在系统中使用 PHP 的方式,最常见的方式有 mod_php、PHP-FPM、PHP CGI 和 PHP CLI(命令行 PHP),下面我将逐一介绍。如果某个文件不存在,说明你没有使用该特定的 PHP 变体,可以直接跳到下一个。
Apache mod_php
可以使用以下命令完成:
sudo nano /etc/php/7.4/apache2/php.ini
在 php.ini 文件的末尾添加以下一行:
zend_extension=/usr/lib/php/20190902/ioncube_loader_lin_7.4.so
保存文件。
然后重启 Apache 服务以使更改生效:
sudo systemctl restart apache2
PHP-FPM
可以使用以下命令完成:
sudo nano /etc/php/7.4/fpm/php.ini
在 php.ini 文件的末尾添加以下一行:
zend_extension=/usr/lib/php/20190902/ioncube_loader_lin_7.4.so
保存文件。
然后重启 PHP-FPM 服务以使更改生效:
sudo systemctl restart php7.4-fpm
PHP CGI
可以使用以下命令完成:
sudo nano /etc/php/7.4/cgi/php.ini
在 php.ini 文件的末尾添加以下一行:
zend_extension=/usr/lib/php/20190902/ioncube_loader_lin_7.4.so
保存文件。
然后重启 Apache 服务以使更改生效:
sudo systemctl restart apache2
PHP CLI(命令行 PHP)
可以使用以下命令完成:
sudo nano /etc/php/7.4/cli/php.ini
在 php.ini 文件的末尾添加以下一行:
zend_extension=/usr/lib/php/20190902/ioncube_loader_lin_7.4.so
保存文件。
这种情况下无需重启任何服务。
测试 IonCube Loader
现在,所有配置均已正确完成。是时候测试 IonCube loader 是否已安装。可以使用以下命令进行测试:
php -v
如果一切正常,你应当看到如下输出:
PHP 7.4.33 (cli) (built: Nov 8 2022 11:36:34) ( NTS ) Copyright (c) The PHP Group Zend Engine v3.4.0, Copyright (c) Zend Technologies with the ionCube PHP Loader + ionCube24 v12.0.5, Copyright (c) 2002-2022, by ionCube Ltd. with Zend OPcache v7.4.33, Copyright (c), by Zend Technologies
如命令输出中的 "with the ionCube PHP Loader + ionCube24 v12.0.5" 所示,我们已成功添加 IoncubeLoader。