Назад | Перейти на главную страницу

Обслуживание из разных каталогов для Internet Explorer

У нас есть две разные версии нашего веб-сайта: одна для старых версий Internet Explorer (7 и 8), а другая для всех остальных браузеров.

(аргументы вокруг обнаружения функций JS были сделаны, но мы обнаружили, что таким образом продвигаться легче!)

Мы хотели бы, чтобы файлы обрабатывались незаметно (т.е. без 301) из другого каталога, поэтому просьба:

/app/foo/bar

будет обслуживаться из каталога:

html/ie/foo/bar

для Internet Explorer 8 и ниже, а также для других браузеров из:

html/other/foo/bar

Можно ли этого добиться с помощью .htaccess?

Я сделал это следующим образом (с небольшим изменением структуры каталогов):

/app/
  - index.html (for modern browsers)
  - .htaccess (with remapping for IE 6-8)
  /ie
    - index.html and other files
    - .htaccess (to turn off further remapping efforts)

Содержание .htaccess в /app является:

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} "MSIE [6-8]" [NC]
RewriteRule ^(.*)$ /app/ie/$1 [PT]

Содержание .htaccess в /app/ie является:

RewriteEngine off