用CI框架时,有时候会遇到这么一个问题,打开网页,只显示 Disallowed Key Characters 错误提示。有人说 url 里有非法字符。但是确定 url 是纯英文的,问题还是出来了。但清空浏览器历史记录和cookies后。 刷新就没问题了。有时候。打开不同的浏览器。有的浏览器会有问题。有的就不会。
解决 CodeIgniter 框架应用中,出现Disallowed Key Characters错误提示的方法。找到core文件夹下的Input文件,将下面的代码:
    function _clean_input_keys($str)
    {
        if ( ! preg_match("/^[a-z0-9:_\/-]+$/i", $str))
        {
            exit('Disallowed Key Characters.');
        }
        // Clean UTF-8 if supported
        if (UTF8_ENABLED === TRUE)
        {
            $str = $this->uni->clean_string($str);
        }    
        return $str;
    }
改成这样:
    function _clean_input_keys($str)  
    {  
        $config = &get_config('config');  
        if ( ! preg_match("/^[".$config['permitted_uri_chars']."]+$/i", rawurlencode($str)))  
        {  
            exit('Disallowed Key Characters.');  
        }  
         
        // Clean UTF-8 if supported
        if (UTF8_ENABLED === TRUE)
        {
            $str = $this->uni->clean_string($str);
        }
        return $str; 
    }
或者改成:
    function _clean_input_keys($str)
    {
        if(preg_match("/^,_[a-z0-9:_\/-]+$/",$str)){
            $str = preg_replace("/,_/","",$str);
        }
                 
        if ( ! preg_match("/^[a-z0-9:_\/-]+$/i", $str))
        {
            exit('Disallowed Key Characters.'.$str);
        }
        return $str;
    }

转载于:https://blog.51cto.com/caixia/1032206

CI报Disallowed Key Characters的解决相关推荐

  1. 雷林鹏分享:解决CI框架的Disallowed Key Characters错误提示

    用CI框架时,有时候会遇到这么一个问题,打开网页,只显示 Disallowed Key Characters 错误提示.有人说 url 里有非法字符.但是确定 url 是纯英文的,问题还是出来了.但清 ...

  2. 解决CI框架的Disallowed Key Characters错误提示

    用CI框架时,有时候会遇到这么一个问题,打开网页,只显示 Disallowed Key Characters 错误提示.有人说 url 里有非法字符.但是确定 url 是纯英文的,问题还是出来了.但清 ...

  3. linux中curl 访问接口返回:“Disallowed Key Characters ”(php CI框架)

    解决 CodeIgniter 框架应用中,出现Disallowed Key Characters错误提示的方法.找到core文件夹下的Input文件,将下面的代码: function _clean_i ...

  4. Disallowed Key Characters(转)

    CodeIgniter Disallowed Key Characters 怎么回事? 相信很多人遇到 Disallowed Key Characters 这样的问题,即使是在访问 CSDN 的时候, ...

  5. 支付宝 报错 rsa_private read error : private key is NULL解决方法

    原因:  真机调试IOS支付宝功能GDB出现 rsa_private read error : private key is NULL提示 调试iOS 支付宝SDK的时候,执行demo.把 Partn ...

  6. 记Vue报错Custom elements in iteration require ‘v-bind:key‘ directives.“错误解决

    在使用v-for时会出现v-for报错 [vue/valid-v-for]Custom elements in iteration require 'v-bind:key' directives.es ...

  7. SpringBoot集成Redis报non null key required(已解决)

    SpringBoot集成Redis报non null key required(已解决) 注意是不是给的key值或传过来的值是不是空的,如果是空的就会报这个错 接下来将流程走下去: 1.创建Sprin ...

  8. java.lang.IllegalStateException: Duplicate key 【java8 toMap(key重复如何解决)】

    使用stream的toMap()函数时,当key重复,系统会报错相同的key不能形成一个map,那么需要解决这个问题, 1.首先查看库中数据结构,相同人员编号存在多条关键词(arr_gic) List ...

  9. 关于在Swift5中无法使用String.characters的解决办法

    关于在Swift5中无法使用String.characters的解决办法 在swift5中已经舍弃了.characters的使用,如果用了则会出现报错 'characters' is unavaila ...

最新文章

  1. haproxy调度web案例
  2. Oracle编程入门经典 第3章 建立以及管理用户和表
  3. 误人子弟的网络,谈谈HTTP协议中的短轮询、长轮询、长连接和短连接(转载)
  4. 2014/5/25 多校
  5. 西安电子科技大学研究生计算机专业王宇平教授学生就业岗位,西安电子科技大学计算机学院导师信息情况...
  6. C++ 处理输入输出错误
  7. 21 WM配置-策略-入库策略1-定义固定仓位的策略F(Fixed Bin Strategy)
  8. volatile关键字与synchronization关键字的区别?
  9. linux at模块,使用kgdb调试linux内核及内核模块
  10. Java面试题:面向对象的特征有哪些方面?
  11. 考计算机科学考研老师问,名师答疑:计算机专业考研复习6问!
  12. Android自定义View的构造函数
  13. 截取一段字符串中,两个指定字符串中间的字符串
  14. 2015-2022年历年真题考研数学二难度概述
  15. ip地址切换器如何切换电脑或者手机上网ip使用教程
  16. MQ消息队列简单介绍+代码
  17. 学计算机买笔记本还是平板,学生买平板还是笔记本电脑好
  18. mysql数据库授权,备份,恢复_wuli大世界_新浪博客
  19. 【计蒜客 A1594 --- 封印之门】floyd
  20. 知道经纬度来调高德地图的官网API来获取所在的位置(逆地理编码)

热门文章

  1. AWS开源Firecracker,一种运行多租户容器服务的新虚拟化技术
  2. 阿里巴巴连任 Java 全球管理组织席位
  3. 27.5. PROCEDURE ANALYSE()
  4. [uboot]Issue list
  5. python中完善decorator
  6. STC12C5A60S2 内部AD+1602显示
  7. 【翻译】Ext JS 6 Beta发布
  8. MongoDB简单操作
  9. WindowType 属性
  10. 友元函数、类的非静态成员函数、静态成员函数的区别