Redirect to https

Переадресация с http на https.

Ранее уже были написаны две статьи на эту тему:
Настройка HTTPS для сайта на WordPress
Переводим свой сайт с HTTP на HTTPS. Бесплатный сертификат SSL.

Те статьи трогать не буду, там описаны разные частные случаи, а тут поделюсь конкретной актуальный на текущей момент информацией.

Получить сертификаты SSL легко можно через панель VESTA. В настройках домена достаточно отметить галочку. И сертификат успешно установится.

Затем открываем конфигурационный файл для nginx вида:

/home/admin/conf/web/ploshadka.net.nginx.conf

И вносим строку

return 301 https://$server_name$request_uri;

в это место

server {
    listen      111.111.111.111:80;
    server_name ploshadka.net;
    return 301 https://$server_name$request_uri;
...
}

Также допустимо внести вместо предыдущего варианта:

rewrite ^ https://$server_name$request_uri? permanent;

Но первый вариант предпочтительнее.

Если мы хотим чтобы была всегда одна переадресация, то в server_name указываем один домен, либо с www либо без префикса www.

Правильная переадресация — одна переадресация:

Проверить кол-во редиректов можно на сайте:
redirect-checker.org

Если в server_name указан домен и алиас, то редиректов будет больше:

Возможно, ничего критичного в этом нет, но зачем один лишний редирект, когда можно и без него.

Редиректы также можно прописать в файле .htaccess:

# https
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Но такой способ тоже может привести к лишним редиректам. Наилучший способ сразу писать в конфигурационном фйале nginx.

Метки:

Привет. Ты находишься на моём сайте. Я разработчик. Здесь я делюсь своими наработками и знаниями. Спрашивай в комментариях, если тебе что-то не понятно или пиши, если есть что добавить.

Если вам пригодилась информация, вы можете поблагодарить автора сайта символическим пожертвованием:

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

Напишите свой комментарий, если вам есть что добавить/поправить/спросить по теме текущей статьи: "Redirect to https"
Если вам нужно добавить участок кода ставьте его между тегами <code></code>