Home » CMS » Исправление доступности сайтов по HTTPS в ISPmanager 5

Исправление доступности сайтов по HTTPS в ISPmanager 5

Я уже давно пользуюсь ISPmanager для администрирования своих сайтов и сайтов клиентов, однако некоторые «особенности» его работы до сих пор удивляют не на шутку.

Речь пойдёт о том, что все виртуальные хосты, созданные через эту панель, оказываются доступными также и по HTTPS-протоколу, хотя в их настройках это явным образом не прописано. Приводит это к появлению дублей страниц, которые могут быть проиндексированы поисковиками. Особенно этим славится Яндекс, который склонен подсовывать вместо нормальных страниц какую-нибудь хрень.

Техподдержка ISPmanager не смогла по этому поводу сказать ничего вразумительного.

Самым простым способом предотвращения появления дублей страниц по HTTPS является настройка перенаправления с кодом 301 с HTTPS на HTTP, что я и сделал.

Мой хостинг настроен на работу через прокси-сервер Nginx, в бэкенде как водится — Apache. Поэтому будем шаманить с Nginx.

Итак, в панели ISPmanagerа в разделе WWW-домены переходим в настройки конкретного хоста (кнопка Изменить)

 

img2

 

и включаем опцию Защищённое соединение (SSL):

img1

Сохраняем настройки и нажимаем соседнюю кнопку Конфиг. В открывшейся вкладке будет два файла конфигурации — прокси-сервера Nginx и Apache. Файл конфигурации Nginx будет состоять из двух секций работы по HTTP и HTTPS, полностью копирующих друг друга за исключением информации о сертификатах в последней секции. Необходимо скопировать секцию работы по SSL и сохранить её в блокноте.

Закрываем вкладку с конфигурационными файлами, снова переходим в настройки домена, убираем галку c опции Защищённое соединение (SSL) и сохраняем настройки. В результате мы вернёмся к исходному состоянию, но при этом сохраним самоподписанные сертификаты, которые не будут удалены.

В блокноте убираем лишнее и вставляем строчку перенаправления. У вас должно получиться что-то подобное:

server {
listen you.ip.ad.ress:443;
server_name myserver.ru www.myserver.ru;
return 301 http://www.myserver.ru$request_uri;
ssl on;
ssl_certificate "..............myserver.ru.crt";
ssl_certificate_key "..............myserver.ru.key";
ssl_ciphers HIGH:!RC4:!aNULL:!eNULL:!MD5:!EXPORT:!EXP:!LOW:!SEED:!CAMELLIA:!IDEA:!PSK:!SRP:!SSLv2;
ssl_prefer_server_ciphers on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
}

Теперь нужно снова открыть конфигурацию Nginx кнопкой Конфиг, вставить этот фрагмент после секции HTTP и сохранить изменения.

После этого я избавился от страниц, открывающихся по HTTPS.

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

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Do NOT follow this link or you will be banned from the site!