У меня самая странная проблема с codeigniter. У меня есть сайт, на котором есть функция поиска, которая отображает запрос человека в URL-адресе, чтобы он мог сохранить URL-адрес. Я убеждаюсь, что текст запроса прошел через rawurlencode, прежде чем я вставлю его в URL-адрес. Однако Codeigniter по-прежнему приводит меня к странице с ошибкой, когда в запросе есть символ, который не находится в моей конфигурации allowed_uri_characters.Codeigniter «ловит» URL-адреса, даже если они были urlencoded
Так что, хотя в моем браузере говорится/search-results/query /% 22samplequery% 22, я по-прежнему получаю ошибку об использовании недопустимых символов.
Это ошибка? У меня нет недопустимых символов в моем URL-адресе. У меня есть знак% и некоторые номера (которые все специально разрешены). Это определенно параметр allowed_uri_characters, который дает мне печаль. Если я добавлю к нему котировочную метку, это позволяет без проблем выполнить запрос% 22.
И чтобы быть ясным, запрос поступает из формы в виде пост-данных, затем кодируется в моем контроллере и затем перенаправляется на новую страницу. Нет никакого способа, чтобы разрешенные_оригиналы каким-то образом применялись до того, как они закодированы.
Это заставляет меня баттироваться, так как единственным моим решением на данный момент является открытие моих разрешенных_риконов для всего, что под солнцем, что не очень безопасно!
Holy godddamn ... Я ненавижу Codeigniter прямо сейчас из-за этой проблемы. Неужели ты не повезло найти ответ? – MikeMurko