我在ioncube4中编写了一个下面给出的脚本,该脚本不能在ioncube 5.5.19上运行并且低于错误。
致命错误:文件/home3/teaonclick/public_html/hahi.in/wp-content/themes/FlatZon/includes/pixr-amazon.php由用于PHP 4的ionCube Encoder编码,无法在PHP 5.5下运行。请要求脚本提供商提供使用ionCube Encoder编码的版本,用于PHP 5.3或PHP 5.4或PHP 5.5。在第0行的未知中
如何更新脚本以使用ioncube 5.5.19? 我的站点在Linux OS上的共享托管服务提供程序中运行
PHP版本5.5.19 MySQL版本5.5.35-cll
显示问题的文件内容如下所示。
<?php //0046b
if(!extension_loaded('ionCube Loader'))
{
$__oc=strtolower(substr(php_uname(),0,3));
$__ln='ioncube_loader_'.$__oc.'_'.substr(phpversion(),0,3).(($__oc=='win')?'.dll':'.so');
if(function_exists('dl'))
{
@dl($__ln);
}
if(function_exists('_il_exec'))
{
return _il_exec();
}
$__ln='/ioncube/'.$__ln;
$__oid=$__id=realpath(ini_get('extension_dir'));
$__here=dirname(__FILE__);
if(strlen($__id)>1&&$__id[1]==':')
{
$__id=str_replace('\\','/',substr($__id,2));
$__here=str_replace('\\','/',substr($__here,2));
}
$__rd=str_repeat('/..',substr_count($__id,'/')).$__here.'/';
$__i=strlen($__rd);
while($__i--)
{
if($__rd[$__i]=='/')
{
$__lp=substr($__rd,0,$__i).$__ln;
if(file_exists($__oid.$__lp))
{
$__ln=$__lp;
break;
}
}
}
if(function_exists('dl'))
{
@dl($__ln);
}
}
else
{
die('The file '.__FILE__." is corrupted.\n");
}
if(function_exists('_il_exec'))
{
return _il_exec();
}
echo('Site error: the file <b>'.__FILE__.'</b> requires the ionCube PHP Loader '.basename($__ln).' to be installed by the website operator. If you are the website operator please use the <a href="http://www.ioncube.com/lw/">ionCube Loader Wizard</a> to assist with installation.');
exit(199);
?>
HR+cPys/ztCE+Cj4mwPYK311udCFJfWF/McNVEDiA5pwzY1QSOjWWm4Rn1HE0AjyMFyv4qsiACbP
等。
答案 0 :(得分:1)
该消息的出现是因为PHP的内部结构在将PHP 4与PHP 5.5进行比较时非常不同,因此在PHP 5.5上运行为PHP 4编译的脚本时,不可能完全兼容。因此不支持。
如果脚本的原始提供者提供了为PHP 5构建的版本(但最好是5.4或5.5),那么您可以在PHP 5.5或5.6上运行它。或者,使用PHP 5.4运行旧代码。披露:我与ionCube有关。