nginx - редирект на мобильную версию

regii

Новичок
Возникла необходимость сделать редирект на мобильную версию.

Пока идея такова, что автоматический редирект будет только с главной страницы.

Т.е. юзер через мобильник заходит на site.ru и его перебрасывает на m.site.ru.

Для всего сайта это сделал так:
if ($http_user_agent ~* (iphone) )
{
rewrite ^(.*) http://m.site.ru$1
}


Вот один из способов(нерабочий) сделать редирект только для главной страницы:

if ($http_user_agent ~* (iphone) )
{
set $mobile 1;
}

location = /
{
if ($mobile = 1)
{ rewrite ^(.*) http://m.site.ru$1 }
}

location /
{
proxy_pass...и все остальное...
}

Проблема в том, что отрабатывает только первый локейшн(что очевидно). Как заставить работать второй location / если $mobile не установлена? Вообще, как правильно настроить nginx для редиректа мобильников только с главной страницы сайта?
 

nw

Новичок
Не знаю насколько будет в тему. Но сейчас вместо подхода "две версии сайта для двух типов клиентов" набирает силу так называемый Responsive design. Это когда версия сайта одна и тема одна, но при определённых условиях полностью перестраивается лейаут сайта - например с трёх колонок всё вываливается в одну простынку, какие-то элементы отключаются, картинки урезаются...

Подходит далеко не всем, но иногда это более сопровождаемо чем несколько разных "тем".
 

С.

Продвинутый новичок
Параллельно идет и другая тенденция. Последние версии мобильных бразуеров по умолчанию "врут", что у них ширина экрана 720 и пытаются работать как десктопный. При этом страница может из себа быть вся резиновая-резиновая, хоть до 100 пикселей ужимающаяся, ее все равно на 720 развернут.
 
Сверху