介绍
ionCube 是一个 PHP 模块扩展,可以加载加密的 PHP 文件并加速网页。 基于 PHP 的应用程序通常需要它。 在本教程中,我们将在 Ubuntu 16.04 服务器上安装 ionCube。
先决条件
要遵循本教程,您将需要:
- 一台带有 sudo 非 root 用户和防火墙的 Ubuntu 16.04 服务器,您可以按照 这个初始服务器设置教程 进行设置。
- 安装了 PHP 的 Web 服务器,例如 Apache 或 Nginx。 按照安装 Web 服务器本身、更新防火墙和安装 PHP 的步骤进行操作。
第 1 步 — 选择正确的 ionCube 版本
您选择的 ionCube 版本与您的 PHP 版本相匹配很重要,所以首先,您需要知道:
- 我们的 Web 服务器正在运行的 PHP 版本,以及
- 如果是 32 位或 64 位。
如果您有 64 位 Ubuntu 服务器,您可能正在运行 64 位 PHP,但让我们确定一下。 为此,我们将使用一个小的 PHP 脚本来检索有关我们服务器当前 PHP 配置的信息。
使用 nano
或您喜欢的文本编辑器在 Web 服务器的根目录中创建一个名为 info.php
的文件(可能是 /var/www/html
,除非您已更改它)。
sudo nano /var/www/html/info.php
将以下内容粘贴到文件中,然后保存并关闭它。
信息.php
<?php phpinfo();
保存对文件的更改后,在您喜欢的浏览器中访问 http://your_server_ip/info.php
。 您打开的网页应如下所示:
在该页面上,查看顶部的标题,其中显示 PHP 版本 。 在本例中,我们运行的是 7.0.8。 然后,查看 System 行。 如果它以 x86_64 结尾,那么您运行的是 64 位 PHP; 如果它以 i686 结尾,它是 32 位的。
使用此信息,您可以继续下载和安装。
第 2 步 — 设置 ionCube
访问 ionCube 下载页面 并根据您的操作系统找到相应的下载链接。 在我们的示例中,我们需要 这个 64 位 Linux 版本 。 复制网站上的 tar.gz 链接并下载文件。
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
接下来,提取存档。
tar xvfz ioncube_loaders_lin_x86-64.tar.gz
这将创建一个名为 ioncube
的目录,其中包含各种 PHP 版本的各种文件。 为您的 PHP 版本选择正确的文件夹。 在我们的示例中,我们需要文件 PHP 版本 7.0
,即 ioncube_loader_lin_7.0.so
。 我们将此文件复制到 PHP 扩展文件夹。
要查找扩展文件夹的路径,请再次查看 http://your_server_ip/info.php
页面并搜索 extension_dir。
在这个例子中,它是 /usr/lib/php/20151012
,所以将文件复制到那里:
sudo cp ioncube/ioncube_loader_lin_7.0.so /usr/lib/php/20151012/
为了让 PHP 加载扩展,我们需要将它添加到 PHP 配置中。 我们可以在主 php.ini
PHP 配置文件中执行此操作,但创建一个单独的文件更简洁。 我们可以将这个单独的文件设置为在其他扩展之前加载以避免可能的冲突。
要找出我们应该在哪里创建自定义配置文件,请再次查看 http://your_server_ip/info.php
并搜索 Scan this dir for additional .ini files。
因此,我们将在 /etc/php/7.0/apache2/conf.d
目录中创建一个名为 00-ioncube.ini
的文件。 文件名开头的 00
确保该文件将在其他 PHP 配置文件之前加载。
sudo nano /etc/php/7.0/apache2/conf.d/00-ioncube.ini
粘贴以下加载指令,然后保存并关闭文件。
00-ioncube.ini
zend_extension = "/usr/lib/php/20151012/ioncube_loader_lin_7.0.so"
为了使上述更改生效,我们需要重新启动 Web 服务器。
如果您使用的是 Apache,请运行:
sudo systemctl restart apache2.service
如果您使用的是 Nginx,请运行:
sudo systemctl restart nginx
如果您正在使用它,您可能还需要重新启动 php-fpm
。
sudo systemctl restart php7.0-fpm.service
最后,让我们确保 PHP 扩展已安装并启用。
第 3 步 — 验证 ionCube 安装
回到【X12X】【X16X】页面,刷新页面,搜索“ionCube”关键词。 您现在应该看到带有 ionCube PHP Loader(已启用) 的 :
这确认 PHP ionCube 扩展已加载到您的服务器上。
保留 info.php
脚本可能会带来一些安全风险,因为它允许潜在的攻击者查看有关您服务器的信息,因此请立即将其删除。
sudo rm /var/www/html/info.php
您还可以安全地删除不再需要的额外下载的 ionCube 文件。
sudo rm ioncube_loaders_lin_x86-64.tar.gz sudo rm -rf ioncube_loaders_lin_x86-64
ionCube 现在已完全设置并正常运行。
结论
现在已经安装了 ionCube PHP 扩展,您可以继续使用任何需要它的 PHP 应用程序。