【发布时间】:2019-06-19 00:21:42
【问题描述】:
我找不到有关此主题的任何内容。
我正在将 1.7.0.2 CE Magento 商店迁移到 Magento 1.9.4.0 CE,但加密代码所在的产品页面完全空白。
php/apache 错误日志中没有输出。
system.log / exception.log 也是空的。
我在 WAMP 上运行 PHP 7.2 和 IonCube 7.2。之前的工作设置是 PHP 5.6,IonCube 5.6。
扩展程序创建者没有回复他们的电子邮件,所以我有点不知道是代码加密还是我的设置。
谢谢!
【问题讨论】:
-
已编译的 PHP 5.6 代码可以在 PHP 7.0 上运行,但要在 PHP 7 上正常使用,即 PHP 7.1 及更高版本,需要为 PHP 7.1 编译文件。因此,扩展开发人员需要为 PHP 7 生成文件。ionCube Loader 将生成错误消息,但 PHP 日志记录设置可能会屏蔽它,或者可能正在查看错误的日志文件。跨度>
-
这可能就是答案。有没有办法触发 IonCube 插件的错误输出?我已经在输出 Magento 错误,但由于某种原因,它只是抛出一个空白页。
-
如果安装了 Loader 会产生类似于以下的错误,但出现的位置取决于您的设置:
PHP Fatal error: The file blah.php was encoded by the ionCube Encoder for PHP 5.6 and cannot run under PHP 7.1 or later. Please ask the provider of the script to provide a version encoded with the ionCube Encoder for PHP 7.1.。 -
我收到了 Ioncube 的官方回复:forum.ioncube.com/viewtopic.php?t=4513&start=0
-
"根据 PHP ini 的 error_log 和 error_reporting 设置,该错误会在某个时候被记录。最可能的问题是 PHP 5.6 编码器生成的文件无法在 PHP 7.2 上运行。它们需要由 7.1 或 7.2 编码器进行编码。10.2 ionCube PHP 编码器包中有一个称为捆绑的功能,它允许生成一组将在 PHP 5.6、7.0、7.1、7.2 和7.3. 无论如何,您需要联系插件提供商,向他们索取可在 PHP 7.2 上运行的插件的编码版本。”
标签: php magento php-7.2 ioncube