【问题标题】:PHP 5.4.31 + Zend Guard configuration issuePHP 5.4.31 + Zend Guard 配置问题
【发布时间】:2014-10-27 04:34:31
【问题描述】:

我在 Amazon Web Services 配置一个 Ubuntu 14.04 网络服务器。我安装了最新的 PHP5.5 作为基础,但我使用的是PHP Farm,以便我可以将 PHP5.4.31 用于需要 Zend Guard 的特定项目,该项目仅与最高 5.4.x 的 PHP 兼容。我将这些行添加到我的自定义 php.ini

zend_extension=/usr/local/php/ioncube_loader_lin_5.4.so
zend_extension=/usr/local/php/ZendGuardLoader.so

所以,一切正常,但是当我编译 PHP 自定义构建时,我最终得到了这个:

Cannot load the ionCube PHP Loader - it was built with configuration API220100525,NTS, whereas running engine is API220100525,NTS,debug
Cannot load Zend Guard Loader - it was built with configuration API220100525,NTS, whereas running engine is API220100525,NTS,debug

现在可以看出,构建是相同的,唯一的区别是:

API220100525,NTS vs. API220100525,NTS,debug

据我了解,PHP Zend Engine 正在调试模式下运行,但我似乎找不到如何禁用调试模式以便激活扩展。

有什么想法吗?

【问题讨论】:

  • 可能无法禁用调试。调试编译添加了一整套“脚手架”代码。你必须找到一个非调试编译。
  • 我是通过PHPFarm自动下载的,有配置选项可以选择哪种类型吗?

标签: php zend-guard phpfarm


【解决方案1】:

我只是偶然发现了同样的错误。 感谢 Marc B 的提示,我查看了 PHPFarm 的 compile.sh

定义了一个标准选项:

--enable-debug

只需删除这一行,删除你编译的php东西

/path/to/phpfarm/src/php-5.x 

并用

重新编译
./compile.sh 5.x

之后你应该有一个可以与 ZendGuardLoader 一起工作的非调试版本

【讨论】:

  • 我最终编译了 5.4.30,但我认为我已经删除了 --with-debug 标志,但我没有删除以前的安装,所以它没有用新设置刷新.
猜你喜欢
  • 2017-05-19
  • 1970-01-01
  • 1970-01-01
  • 2011-05-16
  • 2012-03-17
  • 1970-01-01
  • 1970-01-01
  • 2012-10-06
  • 2011-02-09
相关资源
最近更新 更多