ram0973 писал(а):Кажется понял - если 'defaultController' не указан, то по умолчанию и выполняется Site Controller.
Нет.
Откройте файл protected\config\main.php найдите секцию 'urlManager'=>
В массиве rules увидите такую запись
- Код: Выделить всё
'/' => 'site/index',
это означает, что при загрузке главной страницы обращение пойдёт к файлу SiteController.php, методу actionIndex.
Следует, что можно назвать файл хоть RamController.php и задать в конфиге
- Код: Выделить всё
'/' => 'ram/index',
Всё остальное раскидывается дальнейшими правилами:
- Код: Выделить всё
'/admin' => 'site/login',
'<controller:\w+>/<id:\d+>'=>'<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
'<module:\w+>/backend/<controller:\w+>/<action:\w+>'=>'<module>/backend/<controller>/<action>',
Если будем обращаться к
http://site.ru/site/test, то отработает правило
- Код: Выделить всё
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
и соответственно отработает метод actionTest в файле SiteController.php
Всё просто
ну и есть ещё файл UrlManager.php, который строит ЧПУ урлы