Powered by CodeIgniter

Поддомены

Несмотря на то, что поисковые системы не слишком жалуют сайт, разделы которого расположены на поддоменах, а также в силу эстетических соображений, многие веб-мастеры используют (или мечтают использовать) их на своих проектах.
Чтобы использовать поддомены с cogear, вам необходимо иметь DNS-запись вида "*", указывающую на IP-адреса вашего сервера. Таким образом запрос на любые поддомены будут отправлены к cogear.
Внимание! Запрос на поддомен транслируется в обычный запрос внтури роутера.
http://user.cogear.ru/admin/ => http://cogear.ru/user/admin/
; /gears/global/global.info ... subdomains = TRUE; Включаем поддомены ... ... ; Файл конфигурации любой шестеренки ; Использует поддомен совпадающий с названием шестеренки subdomain = TRUE; ; Использует поддомены указанные явно subdomain[] = user subdomain[] = users ... ;Дополним нужный запрос путями routes[] = 'users(.*) = user/list$1'
Внимание! Вы можете использовать поддомены для блогов/сообществ и всего что захотите. Для этого необходимо указать особый путь роутера в файле конфигурации шестеренки.
routes[] = "% = community" ; отправляет все не зарезервированные поддомены на главный контроллер community ; news.cogear.ru/123-post.html => cogear.ru/community/news/123-post.htmlПри этом другие поддомены, определенные явно, будут работать. Это стоит учитывать при предоставлении возможности пользователю работать с поддоменами (например, при создании сообществ), проверяя массив переменной роутера «subdomains».

Асинхронные запросы

Поскольку AJAX-запросы между поддоменами сайта запрещены, мы нашли простой выход из ситуации. При использовании поддомена первым элементом пути запрос указывайте ajax, перенаправляя запрос по нужном адресу.
http://mail.cogear.ru/ => http://cogear.ru/user/check/ — такой запрос не пройдет.
http://mail.cogear.ru/ => http://mail.cogear.ru/ajax/user/check/ — правильный запрос. Будет перенаправлен по нужному адресу.