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

Нередко на некоторых ресурсах можно встретить две версии сайта: для компьютеров (ноутбуков) и для мобильных устройств: телефонов, планшетов, айфонов, айпадов и других блекберри. Недавно встала задача сделать автоматическое перенаправление посетителей, которые зашли с таких мобильных устройств, на специальную мобильную версию сайта. Причем сделать это, отредактировав файл под названием .htaccess.

Покопавшись в интернете, я обнаружил решение, однако на сайте оно не заработало.Для того, чтобы оно заработало, пришлось покопаться еще. Здесь я привожу полный вариант кода.

Этот код необходимо вставить в файл .htaccess, который располагается в корневой директории вашего сайта — там где располагается index.php, index.html, index.php — или какая там у вас начальная/главная страница. Если такого файла нет, то его надо создать — это обычный текстовый файл, но без расширения .txt.

В данном случае код работает так: если пользователь заходит с мобильного устройства (список платформ и устройств в третьей строке), то его автоматически перебрасывает на страницу http://upread.ru/m/index.php. Можно также использовать этот код и для поддоменов, например, m.upread.ru/index.php или mobile.upread.ru/index.php — все зависит от вашей фантазии.

Однако, пользователю может захотеться посмотреть полную версию с сайта именно с мобильного устройства. В этом случае на странице http://upread.ru/m/index.php ставим ссылку вида , то есть на главную страницу сайта. За перенаправление отвечает четвертая строка в файле .htaccess — если рефер данная ссылка, то посетителя перебрасывает на основной сайт.

Если у вас под рукой нет айфона, телефона с оперой мини или планшета с андроидом, то можно проверить успешность размещения кода с помощью одного дополнения для браузера Mozilla Firefox под названием User Agent Switcher. После установки дополнения в пункте меню инструменты появится подпункт "Default User Agent" — в нем можно выбрать, кем притвориться для сервера — айфоном, роботом-поисковиком либо установить свои настройки для любого устройства.

Читайте также  Почему при закрытии таблицы программа access

Проверить, как работает этот код можно на моем блоге, зайдя с любого устройства :). Если у вас что-то не получается, то за небольшую плату я могу помочь вам все настроить — просто напишите на почту up777up@yandex.ru. Удачного вам кодинга и перенаправлений!

Проверить перенаправление на мобильную версию на моем блоге уже не получится — сделана адаптация для мобильных.

статьи IT, htaccess, перенаправление, телефоны

Если вы используете WordPress или Joomla, вы можете воспользоваться специализированными плагинами для мобильного редиректа.
Google, рекомендует не использовать мобильный редирект вовсе (имеется ввиду не делать отдельный домен/поддомен для мобильного сайта), а сделать адаптивную верстку сайта.

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

    Редирект на мобильный сайт Используйте для определения мобильного устройства специальную библиотеку Mobile Detect, реализация есть практически для всех фреймворков и CMS (Репозиторий на GitHub)

    Перенаправление на мобильную версию


Предлагаю вашему вниманию простое и дешевое (по ресурсам) решение для перенаправления пользователей мобильных устройств на легкую версию сайта. Решение ориентировано на highload сайты, оптимизация которых основана на кешировании гостевых запросов.
Проверка, является ли клиент мобильным устройством, производится веб-сервером nginx и в случае успеха клиент перенаправляется на поддомен или локейшн. Это существенно экономит ресурсы и позволяет добиться большей масштабируемости по сравнение с PHP методами.

Конфигурация для NGINX

Вариант №1. Мобильная версия расположена на поддомене
server <

if ( $http_user_agent

* (windowssmobile|windowssce|iphone|ipod|midp|symbian|seriess60|s60|nokia|аndroid| blackberry) ) <
rewrite ^/(.*) m.site.ru$1 permanent;
>

Вариант №2. Мобильная версия открывалась на том же домене
if ( $http_user_agent

* (windowssmobile|windowssce|iphone|ipod|midp|symbian|seriess60|s60|nokia|аndroid| blackberry) ) <
rewrite ^/(.*)$ /liteversion/$1 last;
>

Определение мобильного устройства по $http_user_agent позволяет с высокой точностью и с минимальными затратами ресурсов отличать мобильных клиентов от обычных ПК.
Так работают Google и Yandex. Вы можете поменять user_agent своего браузера и убедится в этом.

Читайте также  Сигнатуры базы данных нод 32

Конечно, я не знаю, как в точности работает алгоритм определения «мобильника» в G и Y. Но я считаю, что он очень похож на элементарное регулярное выражение написанное выше.

Регулярное выражение содержит список вариаций ключевых слов в строке http_user_agent составленный на основе анализа логов нескольких сайтов. Всего проанализировано около 200 000 запросов за сутки, 5% из которых отправлено с мобильных устройств. Это гарантирует высокую вероятность выхождения в списков всех возможных вариантов user_agent мобильных устройств. Ipad я исключил из-за разрешения экрана в 1024х768px.

Надеюсь, моя заметка будет для вас полезной.

Ссылка на основную публикацию
Adblock
detector