5 октября 2012 г.

Как сделать редирект черз .htaccess если браузер IE6

Иногда приходится разрабатывать проекты, работающий с ограниченным количеством браузеров, либо же без потдержки старых версий (IE6 к примеру). В таких случаях логично организовать редирект на страницу с соответствующим текстом. Сделать это можно как при помощи Javasript-а, так и на стороне PHP. Но как по мне, более элегантным решением будет редирект на стороне веб-сервера Apache, а точнее при помощи фала .htaccess. Создаем файл .htaccess в корне сайта либо же открываем существующий, и добписываем следующие директивы:
RewriteCond %{REQUEST_FILENAME} !^.png [nc]
RewriteCond %{REQUEST_FILENAME} !^.css [nc]
RewriteCond %{REQUEST_FILENAME} !^.jpg [nc]
RewriteCond %{REQUEST_FILENAME} !^.js [nc]
RewriteCond %{REQUEST_FILENAME} !^.gif [nc]
RewriteCond %{HTTP_USER_AGENT} "Firefox/2" [or]
RewriteCond %{HTTP_USER_AGENT} "Firefox/1" [or]
RewriteCond %{HTTP_USER_AGENT} "Flock/1" [or]
RewriteCond %{HTTP_USER_AGENT} "Camino/1" [or]
RewriteCond %{HTTP_USER_AGENT} "Opera/9" [or]
RewriteCond %{HTTP_USER_AGENT} "Opera/8" [or]
RewriteCond %{HTTP_USER_AGENT} "Opera/7" [or]
RewriteCond %{HTTP_USER_AGENT} "Opera/6" [or]
RewriteCond %{HTTP_USER_AGENT} "Opera/5" [or]
RewriteCond %{HTTP_USER_AGENT} "Opera/4" [or]
RewriteCond %{HTTP_USER_AGENT} "Opera/3" [or]
RewriteCond %{HTTP_USER_AGENT} "Opera/2" [or]
RewriteCond %{HTTP_USER_AGENT} "Opera/1" [or]
RewriteCond %{HTTP_USER_AGENT} "Safari/4" [or]
RewriteCond %{HTTP_USER_AGENT} "Safari/3" [or]
RewriteCond %{HTTP_USER_AGENT} "Safari/2" [or]
RewriteCond %{HTTP_USER_AGENT} "Safari/1" [or]
RewriteCond %{HTTP_USER_AGENT} "Navigator/" [or]
RewriteCond %{HTTP_USER_AGENT} "MSIE 6" [or]
RewriteCond %{HTTP_USER_AGENT} "MSIE 5" [or]
RewriteCond %{HTTP_USER_AGENT} "MSIE 4" [or]
RewriteCond %{HTTP_USER_AGENT} "MSIE 3" [or]
RewriteCond %{HTTP_USER_AGENT} "MSIE 2" [or]
RewriteCond %{HTTP_USER_AGENT} "MSIE 1"
RewriteRule . upgrade.html [L]
Конечно же работать все это будет только при условии подключеного модуля mod_rewrite.

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

Отправить комментарий