Codeigniter - URI不允许的字符

时间:2017-02-06 16:36:14

标签: php codeigniter-3

我已经看到了其他几个与此相似的问题,但我无法找到解决我具体问题的方法。

我收到错误The URI you submitted has disallowed characters.当我发送以下请求时:

 http://myrul/login/createNewPassword/reset_token/pwd70xkainz500d57311rli/username/contact%40email.com

现在我已经确定%中的username是触发错误的内容,但我的配置文件允许这样做。

$config['permitted_uri_chars'] = 'a-z 0-9~%.:_\-';

我虽然这应允许在网址中允许%。如果我将配置设为

$config['permitted_uri_chars'] = '';

工作正常。配置字符串不正确吗?或者我应该使用的字符串的另一种变体是什么?

1 个答案:

答案 0 :(得分:3)

contact%40email.com实际上是 contact@email.com ,但urlencoded

因此,您发送的不允许的字符是@,而不是%

如果您在permitted_uri_chars添加“@”,那么您应该没问题。

$config['permitted_uri_chars'] = 'a-z 0-9~%.:_\-@';