Что является причиной ошибки «Запрещенные ключевые символы»? - PullRequest
2 голосов
/ 08 июня 2011

Есть ли способ узнать, какая часть моего кода вызывает ошибку Disallowed Key Characters в Codeigniter?

Ответы [ 2 ]

1 голос
/ 08 июня 2011

Это может быть "плохая" форма ввода name, которую вы пытаетесь запустить через библиотеку Form_validation. Это единственный раз, когда у меня возникла эта проблема, но она может быть ключом $_GET.

Без каких-либо подробностей от вас трудно сказать, но есть хорошее место, чтобы проверить.

0 голосов
/ 09 июня 2011

Уэсли,

Я понятия не имею, будет ли это ваш ответ, но я решил, что внесу его на тот случай, если у кого-то тоже будет такая же ошибка, как и у меня.

Я думаю, что яЯ получил эту ошибку, когда у меня был запрещенный символ в строке URL.Оказалось, что в одном из имен классов моего контроллера есть знак подчеркивания.

Я считаю, что в файле конфигурации есть настройка для codeigniter, где вы можете указать разрешенные символы в строке URL.

Я на работе и не имею доступа к копии файлов Code Igniter, но когда я искал на сайте CI, я обнаружил это:

CodeIgniter Changelog

В примечаниях к журналу изменений для версии 1.4.0 говорится, что они перенесли настройки «разрешенных символов» из файла «rout.php» в файл «config.php».Фактическая строка говорит:

Перемещен список «разрешенных символов URI» из класса Router в файл конфигурации.

Я считаю, что список «позволенных»URI charcters "- это массив, который указывает, какие символы могут использоваться в соглашениях об именах для URL / URI.Возможно, вы захотите проверить файл config.php и посмотреть, какие символы в настоящее время разрешены, и посмотреть, используете ли вы какие-либо из этих недопустимых символов в вашем URI, поскольку это также может потенциально вызвать вашу ошибку.

Удачи!

Редактировать: В журнале изменений для версии 1.7.1 они упоминают следующее:

Заголовок «HTTP / 1.1 400 Bad Request» теперь отправляется при обнаружении запрещенных символов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...