Редирект или алиас – как правильно перенаправить с одного домена на другой?

Приветствую. Есть два одинаковых домена в разных зонах .ru и .com – необходимо сделать редирект с .com на .ru
Сайт в зоне .ru рабочий, а .com как алиас к нему
Как кошернее будет сделать редирект?

Раньше под апачем в .htaccess была запись Redirect 301 / site.ru
Сейчас веб-сервер nginx.
  • Вопрос задан
  • 15343 просмотра
Решения вопроса 1
@inkvizitor68sl
Linux-сисадмин с 8 летним стажем.
Редирект, это когда происходит перенаправление на другой УРЛ при попытке зайти на нужный домен. В nginx лучше это делать так:
server {
listen 80; #или гдетамувас
server_name site.com;
return 301 $scheme://$http_host$request_uri; 
}


Алиас - когда по двум доменам показывается один и тот же контент (без редиректов).
Тогда просто:
server_name site.com site.ru;И остальную конфигурацию как обычно.
Ответ написан
Пригласить эксперта
Ответы на вопрос 4
merryjane
@merryjane
Системный администратор
В конфиге для site.com:
location / {
            rewrite ^/(.+)$ http://site.ru/$1 permanent;
      }

тем самым будет реализован 301 редирект на уровне nginx на домен в зоне ru.
Ответ написан
sumyuga
@sumyuga Автор вопроса
т.е. лучше на стороне веб-сервера решать такую задачу, а не NS-записью CNAME?
и в чём отличие вашего варинта от этих двух:

server {
server_name site.com;
rewrite ^/(.*)$ site.ru/$1 permanent;
}


server {
server_name site.com;
return 301 $scheme://site.ru$request_uri;
}
Ответ написан
turbopower
@turbopower
Создаю бизнесы
так никто и не ответил...
какой способ и как повлияет на поисковую позицию сайта?
Ответ написан
chewarer
@chewarer
Тоже сейчас искал как это сделать. У меня связка Apache + Nginx.
Решил так:
В Апаче для домена дописал это:
ServerName domain.ru
ServerAlias www.domain.ru otherdomain.ru www.otherdomain.ru
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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