升级到 php 5.4 后 ioncube 无法加载

升级到 php 5.4 后 ioncube 无法加载

我担心我的 vps 中某些东西被损坏了 :/ 我希望你能帮助我。

我在 ubuntu-12.04-x86 上。我搬到了新的 vps,所以我尝试将 php 升级到新版本,从 5.3 到 5.4。无论如何,安装后我收到以下消息:

fild loading /usr/lib/php5/20090626+lfs/ioncube_loader_lin_5.3.so /usr/php5/20090625+lfs/ioncube_loader_lin_5.3.so: undefined synbol: php_body_wri 
php 5.4.8-1~presise+1 (cli) (built(oct 29 2012)

我需要说明的是,服务器正在运行,php 也在运行,但是当我执行 phpinfo 时,

“使用 ionCube PHP Loader v4.0.14,版权所有 (c) 2002-2011,归 ionCube Ltd 所有。”

这是我之前按照这个指南安装的:/http://www.upubuntu.com/2012/03/how-to-upgrade-install-php-540-under.html

我需要担心吗?

编辑 好的,我认为我找到了受 Devator 答案启发的解决方案,我从他们的网站以 zip 文件的形式下载了最后一个 ioncube。在这个 zip 文件中,我找到了文件ioncube_loader_lin_5.4.so,然后将文件上传到我看到 php 的文件夹,寻找 5.3 版本,例如:"/usr/lib/php5/20090626+lfs/",然后我转到我的 php.ini 文件并输入该行,但它不起作用,所以我00-ioncube-loader-5.3.iniconf.d folder那里看到了文件,我看到了zend_extension=/usr/lib/php5/20090626+lfs/ioncube_loader_lin_5.3.so我编辑的用于zend_extension=/usr/lib/php5/20090626+lfs/ioncube_loader_lin_5.4.so重新启动 apache 的行,现在我看到了 php 信息的行

'This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
    with the ionCube PHP Loader v4.2.2, Copyright (c) 2002-2012, by ionCube Ltd.'

抱歉我的英语不好:/问题解决了,我想是的

答案1

您是否已添加zend_extension = /usr/local/ioncube/ioncube_loader_lin_5.4.so到您的 php.ini 或者它是否存在?

答案2

如果其他人有同样的情况:
检查 Devator 的解决方案后,请确保使用以下两个标志编译 php:
--禁用维护者-zts
--禁用安全模式
或者更确切地说,这些标志不存在:
--enable-maintainer-zts
--启用安全模式
如果运行 WHM,这些可以写入此处记录的 Raw Opts 文件中:
https://documentation.cpanel.net/display/EA/Raw+Opts

答案3

按照本教程在 Ubuntu 14.04 上升级到 PHP 5.4 后,我遇到了同样的问题:http://phpave.com/upgrade-php-5-3-php-5-5-ubuntu-12-04-lts/

您只需按照上述说明运行以下命令即可。

dpkg-reconfigure php5-ioncube-loader

相关内容