Обратите внимание, что $route['default_controller']
ожидает контроллер , а не пару контроллер / метод. Первое, что вам нужно сделать, это изменить на $route['default_controller'] = 'traffic';
Возможно, вы добьетесь некоторого успеха при использовании пары контроллер / метод, но у вас могут возникнуть проблемы в будущем, поскольку ваша маршрутизация усложняется.
также, как кто-то еще уже заметил, должны соблюдаться правила именования и регистра кода: даже если имя файла контроллера прописное (то есть Traffic.php
), а класс контроллера тоже заглавный (class Traffic extends CI_Controller
) всякий раз, когда вы делаете ссылка на контроллер, такая как в маршруте default_controller
, вы должны go все строчные.
При этом ваша правильная конфигурация маршрутизации должна быть:
$route['default_controller'] = 'traffic';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
$route['test'] = "traffic/test";
С этой конфигурацией :
- Загрузка в
example.com
загрузит https://example.com/traffic/index - Просмотр в
example.com/test
загрузит https://example.com/traffic/test - Просмотр любого другого URI попытается загрузить пару контроллер / метод в соответствии со стандартной маршрутизацией Codeigniter (т. Е. Example.com/something/trial загрузит контроллер
something
и метод trial
в бывший)