Heim  >  Artikel  >  CMS-Tutorial  >  Was soll ich tun, wenn die grundlegenden Systemparameter von Dedecms leer sind?

Was soll ich tun, wenn die grundlegenden Systemparameter von Dedecms leer sind?

藏色散人
藏色散人Original
2020-01-07 09:28:183323Durchsuche

Was soll ich tun, wenn die grundlegenden Systemparameter von Dedecms leer sind?

Was soll ich tun, wenn die grundlegenden Systemparameter von Dedecms leer sind?

Dreamweaver dedecms scheint leere Systemgrundparameter zu haben oder zeigt einen Aufruf der undefinierten Funktion make_hash() an

Empfohlenes Lernen: Dreamweaver cms

Die neueste Version von DreamWeaver (09.01.2018) hat common.func.php im Include-Ordner geändert und zwei Funktionen hinzugefügt.

Wenn die Datei common.func.php im heruntergeladenen Vorlagenordner bereitgestellt wird, ist es sehr wahrscheinlich, dass diese beiden Funktionen nicht verfügbar sind, was zu einem Fehler führt.

Sie müssen den Code dieser beiden Funktionen in die Datei /include/common.func.php einfügen. Der Code lautet wie folgt:

function make_hash()
{
    $rand = dede_random_bytes(16);
    $_SESSION['token'] = ($rand === FALSE)
        ? md5(uniqid(mt_rand(), TRUE))
        : bin2hex($rand);
    return $_SESSION['token'];
}
function dede_random_bytes($length)
{
    if (empty($length) OR ! ctype_digit((string) $length))
    {
        return FALSE;
    }
    if (function_exists('random_bytes'))
    {
        try
        {
            return random_bytes((int) $length);
        }
        catch (Exception $e)
        {
            return FALSE;
        }
    }
    if (defined('MCRYPT_DEV_URANDOM') && ($output = mcrypt_create_iv($length, MCRYPT_DEV_URANDOM)) !== FALSE)
    {
        return $output;
    }
    if (is_readable('/dev/urandom') && ($fp = fopen('/dev/urandom', 'rb')) !== FALSE)
    {
        is_php('5.4') && stream_set_chunk_size($fp, $length);
        $output = fread($fp, $length);
        fclose($fp);
        if ($output !== FALSE)
        {
            return $output;
        }
    }
    if (function_exists('openssl_random_pseudo_bytes'))
    {
        return openssl_random_pseudo_bytes($length);
    }
    return FALSE;
}

Fügen Sie den obigen Code in

/* *

* Laden Sie den Assistenten. Das System lädt standardmäßig den Assistenten

direkt über diesem Code.

Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn die grundlegenden Systemparameter von Dedecms leer sind?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn