Все маршрутизируется через index.php. т.е.
site.com/index.php/controller/method/arg
Вы бы использовали файл htaccess для удаления фрагмента «index.php» URL. т.е.
RewriteCond %{REQUEST_URI} !^(/index\.php|/assets|/tmp|/robots\.txt|/crossdomain\.xml|/favicon\.ico)
RewriteRule ^(.*)$ /index.php/$1 [L]
Что даст вам "более симпатичные" URL, т.е.
site.com/controller/method/arg
Но это не обязательно для CI для правильной маршрутизации URL. В зависимости от вашего apache conf, это, как правило, будет по-прежнему корректно разрешаться и передавать запрос к index.php, который, в свою очередь, определяет «путь» к / controller / method / arg.