Можно ли установить перенаправление с использованием протокола HTTP и префикса "www" на протокол HTTPS без префикса "www"?

Можно ли избавиться от второго редиректа в цепочке ниже, чтобы сразу перенаправлять на 3-й адрес?

Исходная цепочка:

"www.site.ru"
301 Moved Permanently
"https://www.site.ru/"
301 Moved Permanently
"https://site.ru/"
200 OK
  • 14 сентября 2023 г. 10:16
Ответы на вопрос 1
Да, возможно установить перенаправление с использованием протокола HTTP и префикса "www" на протокол HTTPS без префикса "www". Это можно сделать с помощью правил перенаправления веб-сервера.

Чтобы избавиться от второго редиректа и сразу перенаправлять на "https://site.ru/", нужно настроить сервер таким образом, чтобы он выполнял редирект с "http://www.site.ru" на "https://site.ru/".

В зависимости от используемого веб-сервера, настройка может быть немного разной. Вот примеры настроек для некоторых популярных серверов:

Apache:
В файле .htaccess добавьте следующие строки:

RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^ https://site.ru%{REQUEST_URI} [L,NE,R=301]

Nginx:
В блок server добавьте следующие строки:

server {
    listen 80;
    server_name www.site.ru;
    return 301 https://site.ru$request_uri;
}

Если у вас есть доступ к конфигурации сервера, вам нужно добавить эти строки в соответствующий блок конфигурации.

После настройки сервера перезагрузите его, чтобы изменения вступили в силу. Теперь запросы на "http://www.site.ru" будут сразу перенаправляться на "https://site.ru/".
Похожие вопросы