leibao 发表于 2010-10-13 10:12:56

url全是英文的,还是会出现. Disallowed Key Characters .郁闷。清空浏览器历史记录和cookies吗?:'(

kevinchen 发表于 2010-10-13 15:30:56

回复 10# avinmo


    辛苦辛苦,
cookie里有这样的东东“1286952819|3780611|2977|0|0|0”,不知道用来干什么的

kevinchen 发表于 2010-10-13 15:32:10

回复 11# leibao


    你没看你楼上的回复?

syp139 发表于 2010-10-28 14:24:10

回复 2# ecpt


    是你路由器设置有问题,你进入路由器设置面板找到防火选项

把这两项勾去了,重启路由

问题解决


有不会的Q21366226

ecpt 发表于 2010-10-28 15:08:49

我也一直觉得是路由器问题,不过都是客户那里出问题了,我也没办法去找问题原因。经常有业务员来投诉问题,我实在受不了了,就重新找了下问题,发现出问题字符串在cookie里面,某些键名前面多了,_,于是就在system\libraries\Input.php中修改了下,问题解决,修改方法如下:
function _clean_input_keys($str)
        {
               if ( ! preg_match("/^+$/i", $str))
               {
                        exit('Disallowed Key Characters.'.$str);
               }

                return $str;
        }
修改为:
        function _clean_input_keys($str)
        {
               if(preg_match("/^,_+$/",$str)){
                        $str = preg_replace("/,_/","",$str);
                }
               
               if ( ! preg_match("/^+$/i", $str))
               {
                        exit('Disallowed Key Characters.'.$str);
               }

                return $str;
        }

我用了一年的时间解决了一个问题:lol

stdivw 发表于 2011-2-21 15:57:13

stdivw 发表于 2011-2-21 15:57:24

chypizi 发表于 2011-5-25 10:21:43

10的办法倒是可以但是不知道有什么其他的影响没得 呢? 我已经测试通过了   

谢谢他的办法

smartweb 发表于 2011-6-8 11:50:06

我都没有这个文件。
一样存在。

linyunxue 发表于 2011-9-27 23:48:06

               if ( ! preg_match("/^+$/i", $str))
               {
                        exit('Disallowed Key Characters.'.$str);
               }

直接删除这里的if语句就得了!100%解决!   但是完善解决方案是:加个中文正则就好了!安全
页: 1 [2] 3
查看完整版本: Disallowed Key Characters 怎么回事?