Я заставляю это работать таким образом
'public/<pagename:([A-Za-z0-9-A-zÀ-ú]+)>/<i>' => 'site/Profile'
вижу, что мне нужно было поставить "public" в начале, чтобы все заработало, и убрать + w of i, мой "сайт / профиль"просто это print_r из $ _REQUEST;
Array ( [pagename] => pagename [i] => username )
РЕДАКТИРОВАТЬ: ответ из @ rob06 намного лучше, просто не забудьте поставить его первым из массива "rules"
'rules' => array(
'<pagename:[\w-]+>/<i:\w+>' => 'site/profile',
'<controller:\w+>/<id:\d+>' => '<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>',
'<controller:\w+>/<action:\w+>' => '<controller>/<action>',
),