В статье приведены примеры стандартных перенаправлений для веб-сервера Nginx (настройка редиректов для Apache описана в отдельной статье).
Для настройки перенаправлений директивы нужно прописывать в файле конфигурации nginx.conf или, если у вас настроены виртуальные хосты, — в конфигурационном файле соответствующего виртуального хоста. Директиву с редиректом необходимо добавлять в блок server конфигурационного файла.
Перенаправление на другой домен
В примере ниже выполняется редирект на www.new-domain.ru:
server { 
   #...
      rewrite ^ $scheme://www.new-domain.ru; 
   #... 
}
Перенаправление c http на https
server { 
   #... 
      if ($scheme = http){ 
         return 301 https://$server_name$request_uri; 
} 
   #... 
}
Перенаправление с https на http
server { 
   #... 
      server_name  
         example.ru www.example.ru; 
         return 301 http://$server_name$request_uri; 
   #... 
}
Перенаправление домена без www на домен с www
server { 
   #... 
      if ($host ~* ^[^.]+\.[^.]+$) { 
         rewrite ^(.*)$ $scheme://www.$host$1 permanent; 
} 
   #... 
}
Перенаправление домена с www на домен без www
server { 
   #... 
      if ($host ~* www\.(.*)){ 
         set $host_without_www $1; 
         rewrite ^(.*)$ http://$host_without_www$1 permanent; 
} 
   #... 
}
Перенаправление для одной страницы
server 
{ 
   #... 
      if ( $request_filename ~ example_old.html/ ) { 
         rewrite ^ example_new.html permanent;
} 
   #... 
}
Перенаправление на страницу со слэшем в конце
server { 
   #... 
      rewrite ^(.*[^/])$ $1/ permanent; 
   #... 
}
Перенаправление на страницу без слэша в конце
server { 
   #... 
      rewrite ^/(.*)/$ /$1 permanent; 
   #... 
}Была ли статья полезна?
Ваша оценка очень важна
      Пока нет комментариев