Перейти к содержимому

Фотография
- - - - -

Как перенаправить на мобильный поддомен если сайт просматривают с телефона?


  • Вы не можете создать новую тему
  • Закрытая тема Тема закрыта
Сообщений в теме: 5

#1 tenass

tenass

    Прохожий

    Топикстартер
  • Участник
  • 0
    13 сообщ.

Отправлено 10 Сентябрь 2017 в 10:39

Здравствуйте! Суть вопроса такова: 
Есть сайт на opencart. Он лежит на домене допустим: domain.com. Нужно сделать так, чтобы когда пользователь заходит на сайт с телефона, то его автоматически переадресовывало на m.domain.com
Делал следующие вещи:
Прямо после открытого тега head прописывал (подключал спец. библиотеку которая распознает с чего зашел юзер)
 
<script src="/catalog/view/javascript/device.min.js"></script>
<script>
if ( device.mobile() ) {
window.location.href = "http://m.domain.com/";
//window.location = "http://m.domain.com/";
//location.href = 'http://m.domain.com/';
}
</script>
 

Это не помогло.
Потом подключал это: https://opencartforu...mobilnaya-ve...
там пришлось прикручивать специальный php class Mobile_Detect.php, но тоже не помогло.
Заметил странную вещь - когда захожу с телефона, то в адресно строке наблюдаю следующее: domain.com/index.php?route=mobile/home
Т.е. могу догадаться что это и есть перенаправление на загрузку мобильной темы сайта, но не перенаправление на поддомен.
Как реализовать именно перенаправление на поддомен?
  • 0

Спонсор

#2 Volly

Volly

    Увлеченный

  • Участник
  • 96
    469 сообщ.

Отправлено 10 Сентябрь 2017 в 11:39

Может как-то так?
Правила для .htaccess
 

RewriteCond %{HTTP_USER_AGENT} "ipod|iphone|ipad|blackberry"[NC]
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^http://domain.com%{REQUEST_URI} [R,L]

Сообщение отредактировал BaNru: 11 Сентябрь 2017 в 10:22
Исправлены кавычки и URL

  • 1

#3 tenass

tenass

    Прохожий

    Топикстартер
  • Участник
  • 0
    13 сообщ.

Отправлено 10 Сентябрь 2017 в 11:41

Этот код полностью вставить в .htaccess?

А это что за строчка: 

“ipod|iphone|ipad|blackberry”[NC]


  • 0

#4 Volly

Volly

    Увлеченный

  • Участник
  • 96
    469 сообщ.

Отправлено 10 Сентябрь 2017 в 18:31

Когда браузер запрашивает страницу сайт, то он отправляет серверу служебные заголовки, в том числе могут быть инфа о браузере и тип девайса. Эта инфа при получении заносится в серверные переменные.

В файле .htaccess проверяется значение переменной HTTP_USER_AGENT и если оно равно ipod или iphone или ipad или blackberry директива RewriteRule  перенаправит браузер на другой адрес domain.com.

В какое место htaccess вставлять эти строки зависит от того, что там уже есть.

Да, кавычки ставьте правильные " ".


Сообщение отредактировал Volly: 10 Сентябрь 2017 в 18:32

  • 1

#5 tenass

tenass

    Прохожий

    Топикстартер
  • Участник
  • 0
    13 сообщ.

Отправлено 11 Сентябрь 2017 в 21:56

а если человек зашел с телефона на android?


  • 0

#6 Volly

Volly

    Увлеченный

  • Участник
  • 96
    469 сообщ.

Отправлено 11 Сентябрь 2017 в 22:21

В строку "ipod|iphone|ipad|blackberry" можно добавить android и другие необходимые опознавательные слова.

Почитайте про HTTP_USER_AGENT. В неё попадает инфа об операционке, браузере и другое.


  • 0



Похожие темы Свернуть

  Название темы Форум Автор Статистика Последнее сообщение
Статистика

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 скрытых пользователей