Перенаправление с не-www домена на www на сервере с Nginx

Опубликовал slava - 24 января 2016

Drupal поставляется с файлом .htaccess, который прекрасно работает на серверах Apache. Но если Ваш сервер использует Nginx для отдачи страниц сайта посетителям, то Вы быстро обнаружите, что Nginx ничего не знает про файлы .htaccess и не умеет их обрабатывать. Поэтому для перенаправления посетителей с не-www домена на www потребуется чуть больше действий, чем просто снятие комментария с пары строк в .htaccess.

Во-первых, нужно открыть файл конфигурации сайта (на моём DigitalOcean сервере путь к этому файлу выглядит вот так: /etc/nginx/sites-available/drupal) и добавить в самом верху вот такую секцию:

server {
    listen       80;
    server_name  ВАШ_ДОМЕН.com;
    return       301 http://www.ВАШ_ДОМЕН.com$request_uri;
}

После этого нужно отредактировать исходную секцию "server" (которая теперь расположена ниже в этом же файле) и добавить следующую строку под строками "listen":

server {
    listen ...
    listen ...
    server_name  www.ВАШ_ДОМЕН.com;
    ...
}

Теперь нужно перезапустить Nginx из консоли Linux для того, чтобы изменения применились на сервере:

sudo service nginx restart

Этого должно быть достаточно.

Добавить комментарий

Простой текст

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Строки и абзацы переносятся автоматически.
  • Web page addresses and email addresses turn into links automatically.
Отправляя эту форму, Вы соглашаетесь с политикой приватности Mollom.