Глюк 301 редиректа через .htaccess

B
На сайте с 07.02.2005
Offline
161
997

Добрый день/ночь.

Ситуация такая: два сайта на одном хостинге, GoDaddy, одни из них - AddOn (т.е. находится внутри директории - назовем ее DIRECTORY). Сайты назовем site1.com, site2.com.

Все это образовалось при смене домена сайта - старый был site2.com и новый теперь site1.com. Т.е. содержимое полностью идентичное.

Сделан постраничный редирект со старого на новый следующего вида:

RedirectMatch 301 ^/(.*)$ http://www.site2.com/$1

Два дня все работало корректно, сегодня внезапно стало так: морда со старого на новый редиректится нормально, а внутренние страницы - не открываются ввиду множественных редиректов (так пишет FF). Хром показывает, что страница со старого сайта (например, site2.com/page.html) пытается открыться по адресу:

www.site1.com/DIRECTORY/page.html (вместо www.site1.com/page.html ).

Попытались поговорить с техподдержкой GoDaddy - они футболят, говорят, что сервер работает корректно а остальное проблемы нашего кодирования...

Не пойму теперь, что делать и где искать. Сам сайт - голый html.

Заранее спасибо за помощь.

Пожалуй, приведу на всякий случай целиком htaccess-файл:


Options +FollowSymlinks

rewriteEngine on
rewriteBase /

# 301 redirect /index.html to www.site2.com
# RewriteRule ^index.html$ / [R]
RewriteRule ^index\.html$ http://www.site2.com/ [R=301,L]

# 301 redirect site2.com to www.site2.com
RewriteCond %{HTTP_HOST} ^site2\.com [NC]
RewriteRule ^(.*)$ http://www.site2.com/$1 [R=301,L]


# 301 redirect /Zoom-Maps/ directory to /IllustratedMaps/ directory
RewriteRule ^Zoom-Maps/?(.*) http://www.site2.com/IllustratedMaps/$1 [R=301,L]
# redirect 301 /Zoom-Maps/ http://www.site2.com/IllustratedMaps/

# 301 every page from site2.com to site1.com
RedirectMatch 301 ^/(.*)$ http://www.site1.com/$1


#Options +Includes

AddType text/html .shtml .htm .html

AddHandler server-parsed .shtml

AddOutputFilter INCLUDES .shtml .htm .html

IL
На сайте с 20.04.2007
Offline
435
#1
bober:
Т.е. содержимое полностью идентичное.

.htaccess тоже идентичный? Подозреваю, что нет..

В общем случае - если не ясно, где искать - делить правила пополам и частями убирать..

p.s. Я бы не стал редиректить на www.site2, а затем - на www.site1

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
B
На сайте с 07.02.2005
Offline
161
#2

ivan-lev, так что делить? Редирект с одного домена на другой - только одна строка, все остальное относится только к site1.com - с без www на с www и т.д.

Я не вижу где ошибка...

IL
На сайте с 20.04.2007
Offline
435
#3
bober:
Я не вижу где ошибка...

Если её нет в этом .htaccess, она в другом.. (КО)

* ещё бы RedirectMatch последний на rewriterule заменил.

B
На сайте с 07.02.2005
Offline
161
#4

Заменил на


RewriteRule (.*) http://www.site1.com/$1 [R=301,L]

стало редиректить корректно... Ну что за... сутки времени убил - век живи, век учись...

p.s. а чем RedirectMatch плох? Почему Вы это написали?

Как бы то ни было - спасибо. )

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий