https://help.superhosting.bg/redirect-to-mobile-version-of-the-site.html
  • bg

Хостинг, Домейни, Cloud, Виртуални сървъри (VPS), Managed VPS, SSL сертификати

Пренасочване на мобилните потребители към мобилната версия на сайта

WordPress
пренасочване към мобилен сайт, пренасочване към мобилна версия на сайта, mobile, мобилна, мобилна версия, мобилен сайт

Мобилният уеб сайт може да е специална отделна мобилна версия на вече съществуващия уеб сайт. Най-често тази мобилна версия се създава на поддомейн към основния сайт, например m.mysupersite.com или mobile.mysupersite.com. Когато основният сайт е посетен от мобилен потребител, се извършва пренасочване към мобилния сайт.

Пренасочване от основния сайт mysupersite.com към мобилната му версия m.mysupersite.com може да се извърши по няколко начина, използвайки PHP, JavaScript или с поставяне на няколко реда с правила във файла .htaccess.

Пренасочване чрез правила в .htaccess файла

В тази статия се описва само пренасочването на мобилни уеб браузъри (user-agents) към поддомейн на основния сайт, с ползване на файл .htaccess. В директорията на поддомейна обаче, ще е необходимо да качите мобилна версия на съществуващия сайт.

  1. Първо е необходимо да създадете поддомейн за мобилната версия на вашия сайт.
  2. След това се поставят няколко реда в .htaccess файла на основния сайт, които извършват пренасочването.

След като сте създали поддомейна, в директорията на основния сайт, във файла .htaccess поставете следните пренаписващи правила:

RewriteEngine on
RewriteBase /
RewriteCond %{QUERY_STRING} (^|&)mobile=0(&|$)
RewriteRule ^ - [CO=mredir:0:http://mysupersite.com]
RewriteCond %{HTTP:x-wap-profile} !^$ [OR]
RewriteCond %{HTTP:Profile} !^$ [OR]
RewriteCond %{HTTP_USER_AGENT} "acs|alav|alca|amoi|audi|aste|avan" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "benq|bird|blac|blaz|brew|cell|cldc|cmd-" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "dang|doco|eric|hipt|inno|ipaq" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "java|jigs|kddi|keji|leno|lg-c|lg-d|lg-g|lge-" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "maui|maxo|midp|mits|mmef|mobi" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "mot-|moto|mwbp|nec-|newt|noki|opwv" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "palm|pana|pant|pdxg|phil|play|pluc" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "port|prox|qtek|qwap|sage|sams|sany" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "sch-|sec-|send|seri|sgh-|shar|sie-|siem" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "smal|smar|sony|sph-|symb|t-mo" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "teli|tim-|tosh|tsm-|upg1|upsi" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "vk-v|voda|w3cs|wap-|wapa|wapi" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "wapp|wapr|webc|winw|winw|xda|xda-" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "up.browser|up.link|windowssce|iemobile|mini|mmp" [NC,OR]
RewriteCond %{HTTP_USER_AGENT} "symbian|midp|wap|phone|pocket|mobile|pda|psp" [NC]
RewriteCond %{HTTP_USER_AGENT} !macintosh [NC]
# проверка дали вече не е заредена мобилната версия
RewriteCond %{HTTP_HOST} !^mobile\.
RewriteCond %{QUERY_STRING} !(^|&)mobile=0(&|$)
RewriteCond %{HTTP_COOKIE} !^.*mredir=0.*$ [NC]
# пренасочване към мобилната версия
RewriteRule ^ http://mobile.mysupersite.com [R,L]

В маркираните редове (3,4,24,25 и 28) променете текста, спрямо името на основния сайт (mysupersite.com) и създадения поддомейн (mobile.mysupersite.com).

3
RewriteCond %{QUERY_STRING} (^|&)mobile=0(&|$)

заменете "mobile" с името на поддомейна (например ако поддомейна е mobile.mysupersite.com, въведете само "mobile");

4
RewriteRule ^ - [CO=mredir:0:http://mysupersite.com]

заменете "http://mysupersite.com" с името на сайта; ако за сайта се ползва HTTPS, променете http:// на https://;

24
RewriteCond %{HTTP_HOST} !^mobile\.

заменете "mobile" с името на поддомейна (например ако поддомейна е mobile.mysupersite.com, въведете само "mobile");

25
RewriteCond %{QUERY_STRING} !(^|&)mobile=0(&|$)

заменете "mobile" с името на поддомейна (например ако поддомейна е mobile.mysupersite.com, въведете само "mobile");

28
RewriteRule ^ http://mobile.mysupersite.com [R,L]

заменете "http://mobile.mysupersite.com" с пълното име на поддомейна; поставете https://, ако за поддомейна се ползва HTTPS;

Няколко съвета за мобилната версия на сайта

  • Изображения с подходящ размер. Ако изображението е с прекалено малък размер, няма да се вижда добре и не може да подскаже на посетителя какво се крие зад него. Ако е с прекалено голям размер може да отнеме повече време за зареждане и не е сигурно, че ще се визуализира коректно на всички мобилни устройства.
  • Навигация. Според вида на сайта, може да изберете по-подходяща навигация. Ако в сайта има много категории и подкатегории, навигирането през тях може да е по-интуитивно и достъпно чрез текстово меню. Ако категориите в сайта не са много, към менюто може да се добавят и изображения.

500px270px
SuperHosting.BG

Коментари

4 Коментара към "Пренасочване на мобилните потребители към мобилната версия на сайта"

Уведоми ме при
avatar
Веселин Монков
Гост

Нещо не разбрах и не ми се получи пренасочването. Какво точно трябва да променя в редове 3, 24 и 25? Основния ми сайт за PC e livadeto.com, мобилната версия е m.livadeto.com, която пренасочва към файла mindex.php в основната директория на livadeto.com. Сега върнах стария .htaccess защото с промените само в редове 3 и 28 от телефон даваше „твърде много пренасочвания“ и не зареждаше нищо.

СуперХостинг.БГ
SH

Здравейте,

Във вашия случай, с основен сайт livadeto.com и мобилна версия m.livadeto.com, редовете трябва да изглеждат по следния начин:

3
RewriteCond %{QUERY_STRING} (^|&)m=0(&|$)

4
RewriteRule ^ – [CO=mredir:0:http://livadeto.com]

24
RewriteCond %{HTTP_HOST} !^m\.

25
RewriteCond %{QUERY_STRING} !(^|&)m=0(&|$)

28
RewriteRule ^ http://m.livadeto.com [R,L]

Възможно е обаче, заради активното пренасочване от m.livadeto.com към http://livadeto.com/mindex.php/, примерните правила посочени в статията да са несъвместими. Тествайте подробно правилата, тъй като може да е необходимо ги промените.

Обновили сме статията, като сме поставили по-добри примери за редовете (mysupersite.com,mobile.mysupersite.com), които трябва да се променят.

Поздрави,
Мадлена

Веселин Монков
Гост

Значи правилно съм бил го направил (променят се само 4-ти и 28-ми редове, защото съм с поддомейн „m“ както в предишния пример), но не се получи. Ще мъча да прехвърля мобилната версия в нейна си директория и може и да стане.

СуперХостинг.БГ
SH

Здравейте,

Съвсем правилно бяхте извършили пренасочването към мобилната версия, но другото пренасочване (m.livadeto.com -> http://livadeto.com/mindex.php/) създаваше объркване. Ако изчистите пренасочването и поставите съдържание (мобилната версия) в директорията на поддомейна m.livadeto.com, почти сигурно е, че мобилното пренасочване ще сработи коректно. 🙂

Поздрави,
Мадлена

wpDiscuz
Всички права запазени © 2005-2017 , www.superhosting.bg