В чём собственно проблема не совсем понятно.
Сервер настроен правильно? Используете Apache? Если да, то mod_rewite включён?
Что указано в: ?
Код:
Kohana::init(array('base_url' => '/'));
В .htaccess прописано то, что нужно?
Если указать до роута который зовётся
default вот этот
Код:
Route::set('main', 'main(/<action>)', array(
'action' => 'reg|list'
))
->defaults(array(
'controller' => 'mycontroller',
'action' => 'reg',
));
По идее, должно отрабатывать по адресу http://ваш_сайт/main или например http://ваш_сайт/main/list
В первом варианте должен быть контролёр mycontroller а в нём action_reg, в втором варианте action_list. Объяснять почему именно так не нужно? Это понятно? Кстати, на заметку, имена роутов можно использовать со слешами. Это удобно, например для обозначения структуры сайта: route/name/1, admin/dashboard/posts, frontend/blogs.
Ещё одно замечание. В примере, который я указал выше, можно писать так 'action' => 'reg|list' а можно так 'action' => ('reg|list'). Разница только в одном, скобки нужны для группировки регулярного выражения. Вы используете регулярное выражение? Нет? Тогда не используйте скобки. Оно будет работать и так и эдак. Но зачем лишний код?
Иногда бываю проблемы с роутами при такой ситуации:
Код:
Route::set('route/name/1', 'main1')->defaults(array());
Route::set('route/name/2', 'main2')->defaults(array());
Route::set('route/name/3', 'main3')->defaults(array()); Route::set('route/name/4', 'main4')->defaults(array());
Route::set('route/name/5', 'main5')->defaults(array());
Route::set('route/name/6', 'main6')->defaults(array());
Route::set('route/name/7', 'main7')->defaults(array());
Если при написании route/name/3 вы допустили ошибку, роуты которые ниже, работать тоже не будут.
По крайней мере я встречал такие ситуации.
По этому, когда вы тестируете ваш пример, попробуйте отключить все остальные роуты и все модули имеющие свои роуты.