.htaccess

Feb. 14th, 2011 12:34 pm
[identity profile] fergus-macdubh.livejournal.com posting in [community profile] useful_faq
Хелп!
Пытаюсь сделать редирект сайта в папку /old/ с помощью .htaccess.
Если делать с помощью rewriteRule:
RewriteCond %{HTTP_HOST} ^www\.mt-example\.com$ [NC]
RewriteRule ^(.*)$ http://mt-example.com/$1 [L,R=301]

..то получается циклический редирект типа http://mysite.ru/old/old/old ... и т.д.
Причем браузер (хром, фф) это запоминает и потом независимо от настроек на сервере пытается туда увести страницу.

Если пытаюсь сделать просто редирект в сабфолдер:
Redirect /index.html http://mt-example.com/newdirectory/
..то вообще ничего не происходит.

Внимание, вопрос!
1. Как же все-таки сделать редирект в сабфолдер?
2. Как заставить браузер забыть об устаревшем редиректе?

Date: 2011-02-14 10:00 pm (UTC)
From: [identity profile] yaker.livejournal.com
В начало добавить
RewriteRule ^old/ - [L]

Хотя конструкция, конечно, странная. Вы уверены, что с www хотите показывать старую версию сайта, а без www — новую? Пользователи не оценят такую шутку.

Далее. А вы при этом прямо-таки «index.html» запрашиваете, или все-таки «/»? Полный урл как выглядит?

Браузер «запоминать редирект» не может, если вы в явном виде указываете адрес, а не открываете сайт из закладок — которые, наоборот, должны по 301 апдейтиться. Тем не менее, при разработке полезно отключать (или периодически чистить) кэш браузера.
Edited Date: 2011-02-14 10:01 pm (UTC)