Как сделать перенаправление с http на https
Итак, приступим. Что же нужно сделать, чтобы переехать на защищенный протокол.
1. Создать резервную копию файлов и баз данных
Во-первых, вы сможете восстановить данные, если что-то пойдёт не так.
Для создания резервной копии используйте отдельное хранилище, а не дисковое пространство сервера с данными сайта. Если с сервером что-то случится, копии файлов останутся целыми и невредимыми.
Как создать копию сайта, чтобы потренироваться
2. Перенесите копии файлов и баз данных вашего сайта на тестовый поддомен.
4. Чтобы не покупать сертификат для тестового переезда, рекомендуем подключить бесплатный сертификат от Let's Encrypt.
2. Выбрать SSL-сертификат
Мы советуем заранее выбрать сертификат, ведь его получение может занять не один день. Так, на выпуск сертификата с проверкой организации (OV) может уйти до 5 дней.
Чтобы определиться в выборе SSL-сертификата, ориентируйтесь на то, какой тип сертификата подойдёт вашему проекту и какая цена является для вас оптимальной.
3. Подготовить сайт
Так как содержимое сайта запрашивается с веб-сервера при помощи ссылок, начать следует с того, чтобы грамотно их изменить.
Какие бывают ссылки:
Внешние ведут с вашего сайта на другие ресурсы.
Внутренние — переводят с одной страницы на другую внутри сайта.
Также ссылки делятся на абсолютные и относительные.
Абсолютные ссылки представляют собой полный URL , с указанием протокола, домена и пути до каталога или файла.
Пример:
Относительные ссылки — по своей сути лишь часть URL , неполный путь к определенному файлу. Путь такой ссылки высчитывается относительно чего-либо, например, корневой директории домена или протокола.
Пример:
Что же нужно сделать?
3.1. Все внутренние ссылки изменить с абсолютных на относительные
Как изменить ссылки
Большая часть сайтов в мире сделана на базе готовых движков, так называемых систем управления контентом — CMS. У большинства из них есть готовые решения для управления ссылками либо средствами самой CMS, либо при помощи плагинов. Это самый простой и безопасный способ для того, чтобы изменить ссылки.
Такой вариант подходит для многостраничных сайтов со сложной структурой. Если же ваш сайт содержит всего несколько страниц, можно попробовать изменить ссылки вручную.
Современные CMS сохраняют содержимое страниц в базу, поэтому чаще всего ссылки хранятся в базе данных сайта. Чтобы заменить их вручную, можно использовать phpMyAdmin с удобным поиском по базе. Тем более, что он доступен в панели ISPManager.
Есть и другие способы:
- Вручную просмотреть все файлы сайта, скрипты и т.д.: откройте их в текстовом редакторе, типа NotePad++, и при помощи функции поиска и замены приведите все ссылки к нужному виду. Этот вариант подходит тем, чей проект содержит до 4-5 страниц, имеет мало активного содержимого и не имеет базы данных как таковой.
В статье способы рассматриваются как альтернативные, однако для некоторых веб-сайтов придется использовать не один способ, а два или больше. Например, отдельно поменять ссылки в CMS, отдельно — в базе данных и вручную переписать ссылки в коде сайта.
4. Установить SSL-сертификат
Установка сертификата — несложный процесс, но имеет свои нюансы в зависимости от того, какой сертификат вы устанавливаете — платный от известного центра или бесплатный Let’s Encrypt. Если вы обслуживаетесь у нас и используете панель ISPmanager, то можете воспользоваться готовой инструкцией по установке сертификата для любого сайта или для окружения Битрикс. Если возникли сложности, напишите в техническую поддержку, и мы поможем вам с установкой.
5. Проверить работу сайта
Понятно, что проверить вручную все страницы сайта получится не всегда. Тогда, чтобы убедиться, что все страницы загружаются корректно, используйте бесплатные средства SEO-аудита от Яндекс.Вебмастера и Google Search Console. С их помощью можно проверить, верно ли указаны ссылки, а ещё, что тоже пригодится, как отрабатывает редирект, правильно ли сформированы robots.txt и sitemap.xml . Для более детального SEO-анализа можем порекомендовать такие инструменты как, как Netpeak Spider или Screaming Frog .
6. Настроить редирект
7. Внести изменения в файл robots.txt и sitemap.xml
Файл robots.txt — это текстовый документ, размещённый в корне сайта, в котором прописываются параметры управления индексацией сайта. И в нём нам надо изменить следующие адреса:
Было:
Стало:
Меняем ссылку на sitemap.xml.
Было:
Стало:
Sitemap — это, как следует из названия, карта сайта для поисковых систем, которая ускоряет процесс индексации. Это файл в формате XML, размещённый в корне сайта и содержащий адреса всех страниц сайта.
Файл sitemap.xml необходимо заново сгенерировать. Это можно сделать при помощи онлайн-ресурсов или через плагины CMS. После создания новой карты сайта, нужно загрузить её в корневую директорию ресурса.
8. Изменить адрес сайта на стороне поисковых систем
Для Яндекс.Вебмастера
Для Google Search Console
Apache
Откройте файл .htaccess для редактирования и допишите в него следующий блок:
Nginx
Откройте конфигурационный файл веб-сервера Nginx для редактирования.
Если вы производите настройки перенаправления первый раз, то создайте в этом файле следующие секции:
Если основная секция домена уже создана, то удалите из нее строку
и добавьте новую секцию:
Если вторая секция (с основными настройками домена) существует, то внесите в нее изменения, добавив две указанные выше строки.
Робот Яндекса воспринимает такие адреса как разные сайты. Поэтому они могут участвовать в поиске как отдельные сайты. Это может приводить к тому, что адреса начинают конкурировать между собой в результатах поиска. Следовательно один из адресов может терять трафик и не занимать желаемых позиций. Такая ситуация может сохранятся, пока робот не отследит, что на сайтах представлен одинаковый контент. Тогда они будут объединены в группу зеркал.
При объединении главное зеркало будет выбрано автоматически — адрес, который продолжит участвовать в поиске. Вы можете ускорить процесс объединения и указать главное зеркало, следуя инструкции ниже.
Также объединение адресов сайта в группу зеркал позволяет передать некоторые накопленные показатели старого сайта новому, например, внешние ссылки старого сайта будут учитываться как внешние ссылки нового. При этом в Вебмастере на странице Внешние ссылки будут отображаться те адреса, которые указаны на стороннем сайте. Однако оно не гарантирует сохранение количества страниц сайта в результатах поиска, его позиций или посещаемости.
Посетители Ваших сайтов будут уверены в конфиденциальности данных и достоверности страниц, а как дополнительное преимущество использования SSL — большее доверие пользователей к сайту и более высокие позиции в поисковых системах!
Как заказать бесплатный SSL-сертификат из панели управления?
- После заказа SSL-сертификата вы получите письмо на контактный email о подаче заявки на выпуск SSL, а затем еще одно письмо о завершении его установки.
- В момент установки для домена будет автоматически изменена A-запись, если домен работает на наших DNS. Если вы используете не наши DNS, необходимо самостоятельно прописать на них указанный в письме IP-адрес в качестве А-записи для домена.
Как настроить переадресацию?
WordPress
Joomla
OpenCart
DLE
PrestaShop
ModX Revo
ModX Evo
Drupal
1С-Битрикс
Другие CMS / Без CMS
Другие CMS / Без CMS
После этого в течение пяти минут все изменения вступят в силу и переадресация будет включена.
Можно настроить переадресацию вручную, добавив в начало файла .htaccess следующие строки:
При включении переадресации через .htaccess необходимые настройки будут работать только для динамических данных!
- Очистите кэш сайта.
О том, как это сделать, рекомендуем уточнить у его разработчика. - Проверьте работоспособность сайта.
Зайдите на главную страницу, проверьте, как открываются страницы по ссылкам, корректно ли отображаются изображения, загружаются ли стили. Обязательно обратите внимание на значок в адресной строке браузера: он должен сигнализировать о защищенном соединении.
Настройка переадресации для WordPress
По завершении операции WP CLI выведет информацию о количестве замен в каждой таблице базы и сообщит, сколько всего замен было произведено (в нашем примере — 20):
После этого в течение пяти минут все изменения вступят в силу и переадресация будет включена.
Можно настроить переадресацию вручную, добавив в начало файла .htaccess следующие строки:
При включении переадресации через .htaccess необходимые настройки будут работать только для динамических данных!
- Очистите кэш сайта.
Используйте WP CLI: подключитесь по SSH, перейдите в каталог с файлами сайта и введите команду wp cache flush.
- Проверьте работоспособность сайта.
Зайдите на главную страницу, проверьте, как открываются страницы по ссылкам, корректно ли отображаются изображения, загружаются ли стили. Обязательно обратите внимание на значок в адресной строке браузера: он должен сигнализировать о защищенном соединении.
Настройка переадресации для Joomla
После этого в течение пяти минут все изменения вступят в силу и переадресация будет включена.
Можно настроить переадресацию вручную, добавив в начало файла .htaccess следующие строки:
При включении переадресации через .htaccess необходимые настройки будут работать только для динамических данных!
Настройка переадресации для OpenCart
После этого в течение пяти минут все изменения вступят в силу и переадресация будет включена.
Можно настроить переадресацию вручную, добавив в начало файла .htaccess следующие строки:
При включении переадресации через .htaccess необходимые настройки будут работать только для динамических данных!
- Очистите кэш сайта.
Для версий меньше 2.1.x удалите содержимое папки system/cache, для версий от 2.1.x и выше — папки system/storage/cache. - Проверьте работоспособность сайта.
Зайдите на главную страницу, проверьте, как открываются страницы по ссылкам, корректно ли отображаются изображения, загружаются ли стили. Обязательно обратите внимание на значок в адресной строке браузера: он должен сигнализировать о защищенном соединении.
Настройка переадресации для DataLife Engine
После этого в течение пяти минут все изменения вступят в силу и переадресация будет включена.
Можно настроить переадресацию вручную, добавив в начало файла .htaccess следующие строки:
При включении переадресации через .htaccess необходимые настройки будут работать только для динамических данных!
Настройка переадресации для PrestaShop
После этого в течение пяти минут все изменения вступят в силу и переадресация будет включена.
Можно настроить переадресацию вручную, добавив в начало файла .htaccess следующие строки:
При включении переадресации через .htaccess необходимые настройки будут работать только для динамических данных!
- Проверьте работоспособность сайта.
Зайдите на главную страницу, проверьте, как открываются страницы по ссылкам, корректно ли отображаются изображения, загружаются ли стили. Обязательно обратите внимание на значок в адресной строке браузера: он должен сигнализировать о защищенном соединении.
Настройка переадресации для ModX Revolution
После этого в течение пяти минут все изменения вступят в силу и переадресация будет включена.
Можно настроить переадресацию вручную, добавив в начало файла .htaccess следующие строки:
При включении переадресации через .htaccess необходимые настройки будут работать только для динамических данных!
Настройка переадресации для ModX Evolution
После этого в течение пяти минут все изменения вступят в силу и переадресация будет включена.
Можно настроить переадресацию вручную, добавив в начало файла .htaccess следующие строки:
При включении переадресации через .htaccess необходимые настройки будут работать только для динамических данных!
Настройка переадресации для Drupal
После этого в течение пяти минут все изменения вступят в силу и переадресация будет включена.
Можно настроить переадресацию вручную, добавив в начало файла .htaccess следующие строки:
При включении переадресации через .htaccess необходимые настройки будут работать только для динамических данных!
Настройка переадресации для 1С-Битрикс
После этого в течение пяти минут все изменения вступят в силу и переадресация будет включена.
Можно настроить переадресацию вручную, добавив в начало файла .htaccess следующие строки:
При включении переадресации через .htaccess необходимые настройки будут работать только для динамических данных!
- Очистите кэш сайта.
Удалите содержимое папок bitrix/cache и bitrix/managed_cache любым удобным способом (например, через Файловый менеджер). - Проверьте работоспособность сайта.
Зайдите на главную страницу, проверьте, как открываются страницы по ссылкам, корректно ли отображаются изображения, загружаются ли стили. Обязательно обратите внимание на значок в адресной строке браузера: он должен сигнализировать о защищенном соединении.
Как отключить переадресацию?
Отключить переадресацию можно почти так же, как и включить. Необходимо:
Шаг 3 - очистить кэш вашего сайта.
Информацию о том, как это сделать, можно прочитать в инструкции по настройке переадресации или уточнить у разработчика сайта.
Возможные проблемы при использовании SSL
Стоит обратить внимание на возможные проблемы при использовании SSL:
Зачем переезжать на защищенный протокол?
Чтобы ответить на этот вопрос, сначала необходимо дать определение этому протоколу.
Но все изменилось в 2017 году, когда корпорация Google начала массово продвигать данный протокол для сайтов. Популяризация технологии состояла из следующих этапов:
А немного позже в Вебмастере Яндекса на части сайтов стало появляться предупреждение о том, что они не используют защищенный протокол.
Виды сертификатов
SSL-сертификаты классифицируют по подлинности и делятся на 3 типа:
На что еще обратить внимание
При покупке сертификата обязательно стоит обратить внимание используются ли поддомены на сайте. Если они есть, обычный SSL установится только на основной домен, а поддомены останутся незащищенными. Чтобы под каждый поддомен не получать индивидуальный сертификат, существует специальный SSL - Wildcard. Wildcard позволяет защитить несколько доменов (поддоменов) одновременно. Поэтому, если у вас крупный проект использующий поддомены или даже дополнительный домены, то выбирать следует именно Wildcard.
Получение бесплатного сертификата для сайта (Let’s Encrypt)
На следующем экране необходимо выбрать способ верификации домена, чтобы подтвердить, что он принадлежит вам.
Самый простой способ - “Manual Verification” - когда в корень сайта необходимо закинуть файл подтверждения. Выбираем данный способ, скачиваем файл. В корне сайта создается папка .well-known (обязательно с точкой), внутри еще одна папка acme-challenge и в нее размещает скачанный файл подтверждения (их может быть 1 или 2). После чего нажимаем “Download SSL Certificate”.
Далее получаем архив с файлами, которые можно использовать для установки на свой хостинг.
Установка SSL-сертификата на хостинг
Заходим в него, нажимаем кнопку “Установить” и на появившейся странице выбираем один из двух способов добавления сертификата к домену - загрузка готового файла, когда надо прикрепить полученные выше данные сертификата. Сертификат для домена (.crt), приватный ключ (.key), промежуточный сертификат (.ca-bundle) - после того, как указали пути для них, нажимаем “Установить”.
Так же Sweb.ru с недавних пор позволяет получить сертификат без дополнительных манипуляций, необходимо только в разделе "SSL" нажать кнопку “Установить” и выбрать пункт "Let's Encrypt" и домен, на который его установить.
Установка SSL в панели управления Timeweb
Заходим в раздел SSL-сертификаты.
Для хостинга на Beget даже не требуется телодвижений с получением файлов для установки SSL, чтобы поставить сертификат, достаточно перейти в “Сайты”.
И в всплывающем окошке кликнуть на “Установить SSL сертификат”.
Далее, в течении суток, домену будет установлен шифрованный протокол.
Проверка корректности установки SSL-сертификата
Вбиваем в строку адрес сайта и получаем данные.
Ключевое, на что стоит обратить внимание - время действия сертификата. SANs показывает количество покрываемых доменов.
Резервная копия файлов и базы данных
Это действие необходимо делать всегда, когда планируются серьезные изменения на сайте, нельзя пропускать данную процедуру. Вовремя сделанный бэкап позволит вернуть сайт в изначальное состояние, если что-то пойдет не так в процессе работы.
Изменение абсолютных ссылок на относительные в исходном коде
Необходимо проверить шаблоны сайта и убедиться, что все ссылки там - относительные. Такие ссылки обеспечивают протоколонезависимость страниц сайта, что делает их доступными по обоим протоколам и упрощает переклейку в поисковых системах.
Относительная ссылка: /page/.
Ссылки на внешние скрипты и картинки
Там же, в шаблонах сайта, все УРЛы на подключаемые JS-скрипты, картинки, библиотеки, шрифты и другие дополнения сразу стоит поменять на относительные. В основном они находятся в шапке и футере.
OpenCart - перевод на защищенный протокол
На FTP находим 2 файла config.php - с одинаковым названием, но разным расположением. Один в корне сайта, второй - в папке /admin/.
В обоих файлах находим строчки:
Дальше переходим в панель администрирования сайта и в настройках, во вкладке “Сервер”, указываем “Включить SSL”.
ModX - тонкости настройки SSL
Как и для большинства сайтов выше, в панели управления Джумлы в настройках сервера надо указать безопасный протокол для всего сайта. Путь - “Система” - “Общие настройки” - “Сервер” - поле “Включить SSL”, выбрать “для всего сайта”.
Корректировка robots.txt
Проверка и настройка sitemap.xml
Проверка настройки rel="canonical"
После проведения всех вышеописанных процедур, остается проинформировать поисковые системы о том, что у сайта будет новое главное зеркало. Чтобы это сделать в Яндексе, требуется в его вебмастер добавить и подтвердить защищенную версию сайта. В панели управления должно отобразиться два домена со старым протоколом и шифрованным.
К сожалению, с конца 2018 года Google убрал в своем вебмастере какие-либо настройки, позволяющие указать поисковику новое главное зеркало сайта. Поэтому единственным косвенным действием является добавление и подтверждение в Google Search Console новой версии сайта на шифрованном протоколе и последующая установка 301-редиректа.
Приводим список 301-редиректов (не последовательных), практически гарантированно работающих на любом веб-сервере Apache:
Случается, что какой-нибудь стандартный вариант перенаправления прописанный в .htaccess не срабатывает, поэтому ниже приведены альтернативные варианты 301 редиректа на защищенную версию сайта.
Читайте также: