Перезапись URL-адресов для мобильных устройств

#iphone #android #css #.htaccess #mobile-website

#iPhone #Android #css #.htaccess #мобильный веб-сайт

Вопрос:

Я знаю, что этот вопрос задавался много раз, но я все еще не могу понять, что происходит не так в моем коде.

У меня есть ссылка на таблицу стилей в моем HTML

 <link rel="stylesheet" href="style.css" type="text/css" media="screen" />
  

И я хочу перенаправить на другой файл, если пользователь находится на мобильном устройстве.
Я сделал это таким образом:

 RewriteEngine on
RewriteCond %{REQUEST_URI} !^/style.css$
RewriteCond %{HTTP_USER_AGENT} "android|blackberry|ipad|iphone|ipod|iemobile|webos|googlebot-mobile" [NC]
RewriteRule (.*) /mobile.css [L,R=302]
  

Все мои файлы находятся в корневом каталоге поддомена, поэтому я предполагаю, что правило !^/style.css$ должно быть правильным.

Когда я пытаюсь достичь /style.css , у меня нет перенаправления, но при попытке достичь / Firefox сообщает мне, что есть цикл перенаправления.

Я что-то пропустил? Спасибо

Ответ №1:

Это сработает, если вы используете Rewrite вместо перенаправления:

 RewriteEngine on   
RewriteCond %{HTTP_USER_AGENT} "android|blackberry|ipad|iphone|ipod|iemobile|webos|googlebot-mobile" [NC]  
RewriteRule ^style.css$ /mobile.css [L,NC]  
  

Комментарии:

1. np 🙂 Мне стыдно признаться, что решение такого типа никогда не приходило мне в голову до прочтения вашего вопроса. Всегда приятно узнать что-то новое!