学习NO.1 发表于 2015-4-6 19:30:40

DedeCMS Error (PHP 5.3 and above) Please set request_order报错!解决办法

今天道勤网交流群226547332,早上很多新手朋友们,说,自己安装的dedecms出现了:DedeCMS Error: (PHP 5.3 and above) Please set request_order
“小编帮我修改一下php.ini文件吧,我的织梦更新了,但是访问不了,错误提示这个:
DedeCMS Error: (PHP 5.3 and above) Please set request_order
需要更改php.ini文件,要把request_order=“GP”改成“CGP”,然后重启一下服务器。”
这就让无忧主机小编比较为难了。先不说php.ini文件小编没有权限修改,而且php虚拟主机是不支持用户自定义修改php.inip配置文件。就说织梦更新到最新版本,小编还是第一次遇到需要修改php.ini文件才能继续运行的说法。
于是问了下“度娘”说法是,request_order=”GP”,存在一定的安全风险。这里建议用户将配置改成”CGP”。那么有没有其他的方法,能够在不修改php.ini文件的情况下,而解决问题呢?小编坚信这个方法是有的,因为织梦更新到最新版本,没有出问题的客户还是占大多数。如果客户出现这种情况,我认为应该网站中应该存在一些特殊配置导致的。既然是关于“CGP”和“GP”的问题,那么有没有一种可能,就是找到这个判断语句,把它取消掉,也就是不进行判断。通过查找资料,小编知道了这段判断语句是位于include/common.inc.php文件的第32行到第36行。代码是这样的:
if(version_compare(PHP_VERSION, ‘5.3.0’, ‘>’))
{
if(strtoupper(ini_get(‘request_order’)) == ‘GP’)
exit(‘DedeCMS Error: (PHP 5.3 and above) Please set \’request_order\’ ini value to include C,G and P (recommended: \’CGP\’) in php.ini,
小编把这段代码进行了注释,问题解决。如下图


这里无忧主机小编想说一下,php.ini文件的配置是经过了非常合理的研究的,一般情况下是不需要进行更改的。对于程序出问题就想到修改这个文件配置的客户,是否可以先想想,问题是否出在其他方面?是不是还有更简单的方法能解决?很多时候,解决问题的方法就在手边,只需要再稍稍往前走一点点,问题便迎刃而解。

页: [1]
查看完整版本: DedeCMS Error (PHP 5.3 and above) Please set request_order报错!解决办法