php.ini register_globals must is Off虚拟主机解决方法


如果你有看很多APACHE或IIS整合PHP/MYSQL/ZEND/GD等的教材,大多都有叫你修改register_globals=On改为register_globals=Off,殊不知这是不安全的,所以有些独立的服务器没有开启register_globals这一项,最近DEDECMS升级,(没看什么织梦漏洞,估计跟这有关系吧SESSION)输入DEDECMS后台地址,只能看到php.ini register_globals must is Off! ,只有一行的提示,试试了才几次把问题解决。
官方说删除以下禁止即可
//禁止 session.auto_start
if ( ini_get(’session.auto_start’) != 0 )
{
exit(‘php.ini session.auto_start must is 0 ! ‘);
}
但是我删除之后网站还是无法登录后台,在反复试了几次之后才明白,需要删除的地方有两个,
下面是正确解决办法:
找到include文件夹下面的common.inc.php文件。
第一要删除的是:10行开始到20行之间的

//开启register_globals会有诸多不安全可能性,因此强制要求关闭register_globals
if ( ini_get(‘register_globals’) )
{
exit(‘php.ini register_globals must is Off! ‘);
}

//禁止 session.auto_start
if ( ini_get(’session.auto_start’) != 0 )
{
exit(‘php.ini session.auto_start must is 0 ! ‘);
}

第二要删除的是:大概是72行左右的
if ( ini_get(‘register_globals’) )
{
exit(‘php.ini register_globals must is Off! ‘);
}

然后再上传就可以了。
上面是针对虚拟主机的设置,如果你是自己服务器的还有一种办法。
如果是独立服务器的用户可以修改php配置文件中的php.ini,将register_globals=On改为register_globals=Off
同时把session.auto_start=1改成session.auto_start=0,然后重启


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3