本文主要讲解《织梦dedecms登录后台出现500错误》的详细内容
织梦dedecms登录后台出现500错误大部分都是这样解决的哦,也可以把服务器上的php版本降为5.3或者5.2的就可以了
原因很简单,服务器php环境用的php5.4,而dedecms的login.php中使用了一个被php5.4抛弃不用的函数(是不是真的抛弃我不知道,反正原文这么写的)
session_register()
意思就是这说个函数不能用了,想用也用不了。方法很简单,直接注释掉,不用进行注册就可以声明session。
在dedecms目录include/userlogin.class.php中查找
function keepUser()
大概在281行,把keepUser()函数下的 @session_register(); 整段注释掉(删除也可以),结果如下:
functionkeepUser()
{
if($this->userID!=''&&$this->userType!='')
{
global$admincachefile,$adminstyle;
if(emptyempty($adminstyle))$adminstyle='dedecms';
//@session_register($this->keepUserIDTag);
$_SESSION[$this->keepUserIDTag]=$this->userID;
//@session_register($this->keepUserTypeTag);
$_SESSION[$this->keepUserTypeTag]=$this->userType;
//@session_register($this->keepUserChannelTag);
$_SESSION[$this->keepUserChannelTag]=$this->userChannel;
//@session_register($this->keepUserNameTag);
$_SESSION[$this->keepUserNameTag]=$this->userName;
//@session_register($this->keepUserPurviewTag);
$_SESSION[$this->keepUserPurviewTag]=$this->userPurview;
//@session_register($this->keepAdminStyleTag);
$_SESSION[$this->keepAdminStyleTag]=$adminstyle;
PutCookie('DedeUserID',$this->userID,3600*24,'/');
PutCookie('DedeLoginTime',time(),3600*24,'/');
$this->ReWriteAdminChannel();
return1;
}
else
{
return-1;
}
}
另外的解决方法就是在include/userlogin.class.php 中声明一个函数
functionsession_register()
{
returntrue;
}
本网刊登的文章均仅代表作者个人观点,并不代表本网立场。文中的论述和观点,敬请读者注意判断。
2021-02-08
2021-02-24
2021-02-24
2021-02-08
2021-02-08
2021-02-08
2021-02-08
2021-02-08