有没有办法找到我的代码的哪一部分导致Codeigniter中出现Disallowed Key Characters
错误?
答案 0 :(得分:1)
您尝试通过Form_validation库运行可能是“错误”的输入name
。这是我遇到此问题的唯一一次,但也可以成为$_GET
密钥。
如果没有您的详细信息,很难说 - 但是有一个好地方可以检查。
答案 1 :(得分:0)
我不知道这是不是你的答案,但我想我会捐款,以防有人也和我一样犯错误。
我认为当我在url字符串中有一个禁用字符时,我遇到了这个错误。原来我的控制器类名中有一个下划线字符。
我相信codeigniter的配置文件中有一个设置,您可以在URL字符串中指定允许的字符。
我正在工作,无法访问Code Igniter文件的副本,但当我搜索CI网站时,我确实发现了这一点:
在版本1.4.0的更改日志备注中,他们提到他们将“allowed.php”文件中的“允许字符”设置移动到“config.php”文件中。实际线说:
移动了“允许的URI”列表 字符“在Router类之外 并进入配置文件。
我相信“允许的URI charcters”列表是一个数组,它指定在URL / URI的命名约定中可以使用哪些字符。您可能需要检查config.php文件并查看当前允许的字符,并查看您是否在URI中使用了任何不允许的字符,因为这也可能触发您的错误。
祝你好运!编辑:在版本1.7.1的更改日志中,他们提到了这一点:
“HTTP / 1.1 400 Bad Request”标头是 现在发送时不允许的字符 遇到了。