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

Самым простым способом сделать редирект на мобильную версию сайта является настройка сервера с помощью файла .htaccess. У сервера Apache есть модуль mod_rewrite, его и нужно использовать. Условием для редиректа будет значение серверной переменной HTTP_USER_AGENT.

Пусть путь к главной страницей нашего «мобильного» сайта будет mobile/index.php

Откроем файл .htaccess из корневой папки сайта с помощью текстового редактора (например, “NotePad++”) и найдем в нем блок

Код
< IfModule mod_rewrite.c>

Перед строкой “” вставим следующие директивы:

Код

RewriteCond %{HTTP_USER_AGENT} ^Mozilla/5(.*)iPhone
RewriteRule ^(/)?$ /mobile/index.php [R]
RewriteCond %{HTTP_USER_AGENT} (Mozilla/4)(.*)IEMobile
RewriteRule ^(/)?$ /mobile/index.php [R]
RewriteCond %{HTTP_USER_AGENT} (Opera/)(.*)(\(Windows\sNT\s5.1\;\sU\;\sru\))$
RewriteRule ^(/)?$ /mobile/index.php [R]
RewriteCond %{HTTP_USER_AGENT} ^.*BlackBerry.*$
RewriteRule ^(/)?$ /mobile/index.php [R]
RewriteCond %{HTTP_USER_AGENT} ^.*Android.*$
RewriteRule ^(/)?$ /mobile/index.php [R]

Как это работает: во время загрузки сайта проверяется серверная переменная HTTP_USER_AGENT, значение которой передается браузером серверу. Она сравнивается с регулярным выражением, которое описано в условии RewriteCond и если значение совпадает с условным, происходит перенаправление посетителя на страницу с адресом, указанным в RewriteRule. Буква [R] обозначает редирект.
Теперь, если посетитель зайдет на сайт с помощью перечисленных мобильных браузеров, он будет перенаправлен на мобильную версию интернет-сайта.