Роутинг

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
Аватара пользователя
andser
Сообщения: 13
Зарегистрирован: 2010.05.19, 16:48

Роутинг

Сообщение andser »

Привет всем!

Прошу вашей помощи по следующему вопросу: у меня есть сайт example.com. Также есть поддомен этого сайта sub.example.com. К проекту подлючен модуль "affiliate", он лежит как нужно в protected/modules/affiliate. При заходе на example.com/affiliate и любые другие странички с адресом example.com/affiliate/some, example.com/affiliate/some2 все работает и открывается.
Мне необходимо, чтобы при обращении к адресу sub.example.com шел запрос к контроллеру DefaultController модуля affiliate. При обращении по адресу sub.example.com/stats - шел запрос к контроллеру StatsController модуля affiliate. И так далее. Я набросал кусок конфига отвечающего за роутинг, но работает только адрес sub.example.com. Если пробовать обратиться по адресам вида sub.example.com/stats, sub.example.com/info - вываливается ошибка, как если бы неверно был введен адрес :

Код: Выделить всё

'urlManager'=>array(
  'urlFormat'=>'path',
  'showScriptName' => false,
  'rules'=>array(
    'http://sub.example.com' => 'affiliate/default', // по этому пути нормально открывается
    'http://sub.example.com/stats' => 'affiliate/stats', // а вот поэтому...
    'http://sub.example.com/info' => 'affiliate/info', // и по этому - вываливается ошибка
  ),
),
 
Что может быть не так?

ЗЫ: И еще. Перед апачем стоит нжинкс. Может ли он влиять на эти запросы? Если да, то как его можно подстроить?
Аватара пользователя
Svyatov
Сообщения: 459
Зарегистрирован: 2010.08.12, 14:50
Откуда: Санкт-Петербург
Контактная информация:

Re: Роутинг

Сообщение Svyatov »

Это нужно настраивать не в роутах Yii, а в апаче и/или nginx, чтобы запросы на поддомен роутились на модуль.
Аватара пользователя
andser
Сообщения: 13
Зарегистрирован: 2010.05.19, 16:48

Re: Роутинг

Сообщение andser »

Svyatov писал(а):Это нужно настраивать не в роутах Yii, а в апаче и/или nginx, чтобы запросы на поддомен роутились на модуль.
Вот почему то так и подумал...
В нжинксе еще не очень пока разбираюсь :\ Не подскажете пример такого конфига? Или куды можно сходить почитать что-нить под данной теме?
Аватара пользователя
Svyatov
Сообщения: 459
Зарегистрирован: 2010.08.12, 14:50
Откуда: Санкт-Петербург
Контактная информация:

Re: Роутинг

Сообщение Svyatov »

На http://sysoev.ru/nginx/docs/ ?
Сам в nginx не селен, но теоритечески там нет ничего сложного в настройке.
Dr0ID
Сообщения: 27
Зарегистрирован: 2010.04.04, 20:02
Откуда: Новосибирск
Контактная информация:

Re: Роутинг

Сообщение Dr0ID »

При чем тут nginx? sub.example.ru он же нормально отрабатывает?
у вас проблема в правилах раутинга, надо так:

Код: Выделить всё

    'http://<domain:\w+>.x.ru/login'=>'backend/dashboard/login',
    'http://<domain:\w+>.x.ru/logout'=>'backend/dashboard/logout',
    'http://<domain:\w+>.x.ru/<controller:\w+>'=>'backend/<controller>/index', 
Вот так у меня, правила для динамических поддоменов, где backend - модуль. Надеюсь дальше разберетесь.
Аватара пользователя
Svyatov
Сообщения: 459
Зарегистрирован: 2010.08.12, 14:50
Откуда: Санкт-Петербург
Контактная информация:

Re: Роутинг

Сообщение Svyatov »

Все равно при этом сервер должен быть настроен так, чтобы запросы к поддоменам проксировались на основной домен.
Ответить