织梦后台sys_info.php 500,织梦dedecms登录后台出现500错误

这篇博客介绍了当使用PHP5.4环境时,织梦dedecms登录出现500错误的原因,主要是由于session_register()函数已被废弃。解决方案是注释掉或替换该函数,或者将PHP版本降至5.3或5.2。通过修改include/userlogin.class.php文件中keepUser()函数内的相关代码,可以避免使用已废弃的session_register(),从而解决问题。
摘要由CSDN通过智能技术生成

织梦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(); 整段注释掉(删除也可以),结果如下:

function keepUser()

{

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();

return 1;

}

else

{

return -1;

}

}

另外的解决方法就是在include/userlogin.class.php 中声明一个函数

function session_register()

{

return true;

}

免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。

本站vip会员 请加入织梦58 VIP②群 PS:加入时备注用户名或昵称

普通注册会员或访客 请加入织梦58 技术交流②群

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值