Суть в следующем:
Есть три модуля:
backend
promo
mobile
Модуль mobile открывает конкретный сайт по GET-параметру "link"
Хочется этот параметр (link) сделать поддоменом, т.е, чтобы по ссылке
test.example.com открывался
example.com/mobile/default/index/link/test и т.д (
test.example.com/profile ->
example.com/mobile/profile/index/link/test), но при этом backend и promo продолжали работать со стандартными правилами yii/
На данный момент было сделано такое решение в конфиге:
'urlManager' => array(
'urlFormat' => 'path',
'showScriptName' => false,
'rules' => array(
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'http://www.example.com' => '/',
'http://<link:\w+>.example.com' => 'mobile/default/index/',
'http://<link:\w+>.example.com/<controller:\w+>/<action:\w+>/<id:\d+>' => 'mobile/<controller>/<action>',
'http://<link:\w+>.example.com/<controller:\w+>/<action:\w+>' => 'mobile/<controller>/<action>',
'http://<link:\w+>.example.com/<controller:\w+>' => 'mobile/<controller>/index',
'http://<link:\w+>.example.com/mobile/<controller:\w+>/<action:\w+>' => 'mobile/<controller>/<action>',
')
Однако, в данном решении меня не устраивает то, что при создании адреса внутри модуля mobile вида
$this->createUrl('/mobile/profile/index')
получается адрес
link.example.com/mobile/profile/index
Можно ли как-то избавиться от слова "mobile" в линках? Потому что сейчас url'ы вида
link.example.com/profile/index тоже работают, но не генерируются.