Codeigniter xml rpc问题
我在CodeIgniter xml rpc中遇到了一个奇怪的问题。如果请求中的某些数据包含Codeigniter xml rpc问题,codeigniter,xml-rpc,Codeigniter,Xml Rpc,我在CodeIgniter xml rpc中遇到了一个奇怪的问题。如果请求中的某些数据包含system(xxx)它将自动转换为system&140;xxx&140 只有当wordsystem后跟左括号和右括号时,才会发生这种情况 例如,如果我发送信息系统学士(BIS),它将作为信息系统学士&140;BIS&141 只是想知道是否有其他人有过这个问题,或者知道关于这个问题的任何事情 这是由默认激活的CodeIgniter XSS过滤引起的。之所以会发生这种情况,是因为system()是PHP中执行
system(xxx)
它将自动转换为system&140;xxx&140代码>
只有当wordsystem
后跟左括号和右括号时,才会发生这种情况
例如,如果我发送信息系统学士(BIS)
,它将作为信息系统学士&140;BIS&141代码>
只是想知道是否有其他人有过这个问题,或者知道关于这个问题的任何事情
这是由默认激活的CodeIgniter XSS过滤引起的。之所以会发生这种情况,是因为system()是PHP中执行shell代码的命令
简单解决方法(不推荐):在config.php中停用它
$config['global_xss_filtering'] = FALSE;
更好的解决方法:在XML-RPC控制器中,根据具体情况停用它,因此在服务器部件集中
$this->config->set_item('global_xss_filtering',FALSE);
是的,你是对的。这是因为xss过滤。但它不受配置文件中的globalxss_filtering
参数控制。即使你们弄错了,问题还是来了。相反,Xmlrpc.php中有一个单独的xss_clean
属性来管理此设置。谢谢你的帮助。