Задать вопрос
lculver
@lculver
web-программист

Почему .htaccess перенаправляет на зеркало?

Есть сайт site1.ru и его зеркало site2.ru. Хочу перенаправить c https://site2.ru/comments/ на https://site2.ru/comments. Для этого в .htaccess добавил строки:
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^(.+)/$ /$1 [R=301,L]
Но запрос перенаправляется на https://site1.ru/comments. В чём может быть причина и как это исправить?
  • Вопрос задан
  • 61 просмотр
Подписаться 1 Средний 2 комментария
Пригласить эксперта
Ответы на вопрос 2
@dodo512
RewriteCond %{HTTP_HOST} ^site2\.ru [NC]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^(.+)/$
RewriteRule ^(.+)/$ https://site2.ru/$1 [R=301,L]
Ответ написан
Комментировать
С учётом комментариев, имхо должно быть т ак:
RewriteCond %{HTTP_HOST} :site2\.ru [NC]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^comments/$ /comments [R=301,L]

Как и у dodo512, мне кажется важным, чтобы каталог comments не существовал физически. И ещё пара условий:
  1. Апач -единственный веб-сервер ( если перед ним стоит nginx, он по дефолту редиректит на слеш )
  2. сервер - выделенный, а не shared хостинг ( например, BeGet вроде бы слеши дописывает)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы