DedeCMS 织梦在 Windows 的 PHP5.4 环境下登录后台空白的解决办法

知道91 | 教程 | 2014-10-24 | 阅读:4604

在Windows/Windows主机上安装了DedeCMS 织梦程序后,但是通过/dede登录后台却是一片空白,那么这样的问题应该怎样解决呢?下面一步步分析怎样解决DedeCMS 织梦在 Windows/Windows主机环境下登陆后台显示空白的解决办法。

DedeCMS 织梦在 Windows 的 PHP5.4 环境下登录后台空白

DedeCMS 织梦在Windows环境下登录后台空白的原因

首先检查你使用的PHP版本是不是 php5.4,如果是php5.4那么原因就在于session_register,session_unregister 函数已经在 php5.4 中被移除了,正如版本里说明的那样,如果继续使用该函数会产生错误。那么找到了DedeCMS 织梦在 Windows 登录后台空白原因就可以对症下药了。

DedeCMS 织梦在 Windows 的 PHP5.4 环境下登录 Admin 后台空白的解决办法

网上有更改include/userlogin.class.php这个文件的,在287行到308行原内容

但更改后程序移动到php5.4以下 函数又找不到了,正确的更改方法是:重新定义session_register() 、session_unregister() 这些方法。

将下面代码粘贴到/include/helpers/util.helper.php 最后即可 !

// Fix for removed Session functions 
function fix_session_register(){
    function session_register(){
        $args = func_get_args();
        foreach ($args as $key){
            $_SESSION[$key]=$GLOBALS[$key];
        }
    }
    function session_is_registered($key){
        return isset($_SESSION[$key]);
    }
    function session_unregister($key){
        unset($_SESSION[$key]);
    } 
} 
if (!function_exists('session_register'))
fix_session_register();

通过上面的代码就能轻松解决edeCMS 织梦在 Windows 的 PHP5.4 环境下登录后台空白的bug,php版本没有完全做到向下兼容,所以在部署一些使用PHP开发的框架的时候,一定要注意框架的环境要求。