ioncube ошибка "путь / к / file.php повреждена" - PullRequest
0 голосов
/ 07 ноября 2018

У меня есть веб-сайт WordPress, и после установки плагина он внезапно упал, и я получил сообщение об ошибке «Файл /home/omdikalc/public_html/wp-content/themes/martfury/functions.php поврежден». Файл, к которому относится ошибка, является файлом function.php моей темы, и файл закодирован с помощью ioncube и содержит эту часть кода, которая вызывает ошибку:

    <?php //00543
    // Encoded by www.Rtl-Theme.com
    // Encoded at 24 August 2018 - 15:14:53
    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 " . (php_sapi_name() == 'cli' ? 'ionCube' : '<a         href="http://www.ioncube.com">ionCube</a>') . " PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.\n\nPlease visit " . (php_sapi_name() == 'cli' ? 'get-loader.ioncube.com' : '<a href="http://get-loader.ioncube.com">get-loader.ioncube.com</a>') . " for install assistance.\n\n");
    exit(199);
    ?>

Я связался со своим провайдером тем, и они сказали, что с кодом все в порядке, и проблема в хост-сервере. Я общался с провайдером хостинга моего сайта, и они сказали, что ioncube работает на сервере правильно. что мне делать?

1 Ответ

0 голосов
/ 17 ноября 2018

«поврежден» (в отличие от «поврежден») происходит из преамбулы PHP в начале файла ionCube и указывает, что загрузчик ionCube не рассматривал файл как файл ionCube; если бы она имела преамбулу, она никогда не была бы выполнена, поскольку загрузчик взял бы на себя обработку файла. Одной из причин может быть внесение значительных изменений в размер текста, который появляется перед закодированными данными, например, украшение обычного компактного кода PHP, как это было сделано здесь. Вам следует убедиться, что вы используете исходные неизмененные файлы, предоставленные поставщиком скриптов, и, если они все еще застряли, обратитесь в службу поддержки ionCube. Если вы получаете сообщение «поврежден», это обычно означает, что загрузчик распознал файл как файл ionCube, но он был поврежден, например, при удалении текста об авторских правах, встроенного разработчиком.

...