Задать вопрос
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. В чём может быть причина и как это исправить?
  • Вопрос задан
  • 78 просмотров
Подписаться 1 Средний 2 комментария
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик с нуля
    6 месяцев
    Далее
  • Skillfactory
    DevOps-инженер
    6 месяцев
    Далее
  • SF Education
    Бэкенд-разработчик на Python
    3 месяца
    Далее
Пригласить эксперта
Ответы на вопрос 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 вроде бы слеши дописывает)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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