我正在安装ionCube,但是php配置缺少ionCube的zend_extension,但没有指定确切的内容
我正在开发 CentO
一切顺利谢谢:)
我错过了几件事
Select the correct bit release
Match the Loader with your PHP version, e.g. for PHP 5.3, ioncube_loader_lin_5.3.so (extensions are inside the folder)
Add 'zend_extension = /usr/local/ioncube/ioncube_loader_lin_5.3.so' to php.ini
Restart the server
该解决方案有两个部分对我有用:
conf.d
从mods-available
目录符号链接到目录中。不要像加载程序向导建议的那样简单地将文件复制到 conf.d 中。有关更多详细信息,请参阅我的博客文章。
我在 Ubuntu 上安装时遇到了完全相同的问题。Ubuntu 想要从 /etc/php5/apache2/conf.d/20-ioncube.ini 到 /etc/php5/mods-available/20-ioncube.ini 的软链接。我按照给定的指示尝试了该操作,并且 apache 重启失败并出现此错误:“PHP 致命错误:[ionCube Loader] 加载程序必须作为第 0 行未知的 php.ini 文件中的第一个条目出现”在错误日志/ var/log/apache2/error.log
对我有用的解决方案是删除软链接并从 /etc/php5/mods-available/20-ioncube.ini ("zend_extension=/usr/lib/php5/20121212/ioncube_loader_lin_5.5.so ") 到 /etc/php5/apache2/php.ini
可能值得注意的是,我删除了等号两侧的空格。
Apache 成功重新启动并单击加载程序脚本页面中的测试链接导致成功消息,就像我的开发环境中依赖 ioncube 的后续脚本执行一样。
实际上 ioncube 需要在 php.d 目录中拥有自己的 ini 文件。Ioncube 读取自己的文件名为 20-ioncube.ini 的文件。
所以要做到这一点,我们需要创建 vi /etc/php.d/20-ioncube.ini 并在其中添加文本:“zend_extension = /usr/lib/php/modules/ioncube_loader_lin_5.3.so”。现在重新加载 php-fpm 和浏览器。Ioncube 现在会找到 zend 框架。
您可以尝试在我的gist install_ioncube.sh中执行我的安装 ioncube 脚本
或者按照其他脚本中的官方向导手动安装
# run-loader-wizard.sh
curl -O https://www.ioncube.com/loader-wizard/loader-wizard.tgz
tar zxvf loader-wizard.tgz
cd ./ioncube
php -S localhost:8000
# open http://localhost:8000/loader-wizard.php