示例#1
0
    // Shall be handled later, don't forget!
    define("XOOPS_CHECK_PATH", 0);
    // Protect against external scripts execution if safe mode is not enabled
    if (XOOPS_CHECK_PATH && !@ini_get("safe_mode")) {
        if (function_exists("debug_backtrace")) {
            $xoopsScriptPath = debug_backtrace();
            if (!count($xoopsScriptPath)) {
                die("XOOPS path check: this file cannot be requested directly");
            }
            $xoopsScriptPath = $xoopsScriptPath[0]["file"];
        } else {
            $xoopsScriptPath = isset($_SERVER["PATH_TRANSLATED"]) ? $_SERVER["PATH_TRANSLATED"] : $_SERVER["SCRIPT_FILENAME"];
        }
        if (DIRECTORY_SEPARATOR != "/") {
            // IIS6 may double the \ chars
            $xoopsScriptPath = str_replace(strpos($xoopsScriptPath, "\\\\", 2) ? "\\\\" : DIRECTORY_SEPARATOR, "/", $xoopsScriptPath);
        }
        if (strcasecmp(substr($xoopsScriptPath, 0, strlen(XOOPS_ROOT_PATH)), str_replace(DIRECTORY_SEPARATOR, "/", XOOPS_ROOT_PATH))) {
            exit("XOOPS path check: Script is not inside XOOPS_ROOT_PATH and cannot run.");
        }
    }
    // Secure file
    require XOOPS_VAR_PATH . '/data/secure.php';
    if (!class_exists('XoopsBaseConfig', false)) {
        include __DIR__ . '/class/XoopsBaseConfig.php';
        XoopsBaseConfig::bootstrapTransition();
    }
    if (!isset($xoopsOption["nocommon"]) && XOOPS_ROOT_PATH != "") {
        include XOOPS_ROOT_PATH . "/include/common.php";
    }
}