Я получил этот URL:
http://twitternieuws.com/class/function/ID?oauth_token=xxxxx&oauth_verifier=xxxxx
И я продолжаю получать ошибки, такие как «Запрошенная вами страница не найдена» или «Представленный вами URI имеет запрещенные символы». Я попытался изменить следующие параметры с различными настройками:
$config['permitted_uri_chars']; $config['enable_query_strings']; $config['uri_protocol'];
Есть ли что-нибудь, что я могу сделать, чтобы заставить его работать? Я использую codeigniter 1.7.2
Строки запроса в 1.7.2 являются шуткой, он использует ?c=controller&m=method
чтобы в основном изменить ваши симпатичные URL-адреса на параметры psuedo $ _GET. Я действительно не понимаю, почему кто-то будет использовать его так, как он предназначен, он очень вводит в заблуждение и не совпадает с обычными строками запроса.
Я настоятельно рекомендую вам ознакомиться с последней версией Codeigniter, где они не отменяют массив $ _GET (теперь могут использоваться обычные строки запросов). В одном из основных файлов в более старых версиях он говорит, что CI does not use $_GET so we are going to unset() the global $_GET array
. Ну, а что, если мне нужно использовать $ GET? Я всегда думал, что это сумасшествие, и люди навеки кричали о поддержке $ _GET.
Серьезно, однако, пришло время обновить:
Последнее: https://bitbucket.org/ellislab/codeigniter-reactor/
Стабильный: http://codeigniter.com/
Когда обновление до CodeIgniter 2 не является вариантом, вы можете как-то воссоздать переменную $ _GET (добавьте это для каждого контроллера, где вам нужна строка запроса):
parse_str ($ _ SERVER [ 'QUERY_STRING'], $ _ GET);
И измените это в файле config.php:
// $ config ['uri_protocol'] = "AUTO"; // Изменим это
$ config ['uri_protocol'] = "PATH_INFO"; // к этому