Переход на https с сохранением трафика с поисковых систем

C февраля 2016 года Roman.ua работает на защищенном HTTPS соединении с SSL-сертификатом. У нас почти нету конфиденциальных данных и пока нету авторизованных пользователелей, но мы перешли на HTTPS. И вот почему:


Основной страх перехода с HTTP на HTTPS — стать невидимкой для Google Analytics чужих сайтов и потерять поисковый трафик. Система аналитики не распознает переход с вашего https-сайта на обычный http и отнесёт его к прямому. Проблему решит мета-тег «referrer». Его нужно использовать, чтобы системе аналитики было видно, с какого защищённого сайта был переход. Есть несколько способов составления тега:

  1. None: Никогда не передает реферальные данные:
    <meta name="referrer" content="none">
  2. None When Downgrade: Передает реферальные данные сайтам на HTTPS, в то время, как сайтам на HTTP данные не передаются.
    <meta name="referrer" content="none-when-downgrade">
  3. Origin Only: Передает данные о хостах и поддоменах. При этом URL , как правило, имеет следующий вид: https://roman.ua/example.html отправит только https://roman.ua (наш выбор)
    <meta name="referrer" content="origin">
  4. Origin When Cross-Origin: Передает полные данные о URL в случаях, когда настройка произведена по схеме №3 вне зависимости от того, какой протокол использует сайт HTTP или HTTPS.
    <meta name="referrer" content="origin-when-crossorigin">
  5. Unsafe URL: Всегда передает полный URL реферера. Важно понимать, что данная настройка является наименее безопасной. Часть незашифрованных данных может быть передана. По умолчанию фрагменты URL , имя пользователя и пароли автоматически исключаются из URL-а.
    <meta name="referrer" content="unsafe-url">

Смена протокола нужнa особенно для сайтов, которые содержат информацию для перехвата (интернет-магазины, платные онлайн курсы, сервисы с конфиденциальными данными пользователей). Такой протокол как HTTP не предоставляет защиту информации на сайте: соединение можно перехватить, и оно является небезопасным. HTTPS соединение зашифровано и безопаснее, и возможность перехвата информации блокируется.

image00

В нашей статьей вы найдёте подробную инструкцию перехода на HTTPS. Мы подготовили материал на базе своего опыта и информации из блогов NetpeakEmaro-ssl.

Покупка SSL сертификата

Для того, чтобы перейти на безопасный протокол, в первую очередь необходимо установить SSL сертификат. Необходимо определиться, какой вид сертификата нужен. Классифицировать SSL сертификаты можно по степени защиты:

  • Domain Validation. Наиболее распространенный сертификат. Выдается на один домен, и если вы решите сменить доменное имя, придется оплачивать заново. Цена — от $10 до $30 в год.
  • Organization Validation. Подтверждает домен и организацию. Могут проверить информацию в прессе, свидетельство о государственной регистрации. Цена — от $40 до $200 в год.
  • Extended Validation. Сертификат с расширенной проверкой — для его получения проверяется наличие компании по адресу, свидетельство о регистрации, операционная деятельность, торговая марка. Все для того, чтобы получить зеленую строку в адресной строке браузера. Цена — от $120 до $300 в год.


А также по функциональности:

  • обычные SSL-сертификаты;
  • Wildcard сертификаты — используйте, если хотите установить HTTPS и на поддоменах;
  • SAN сертификаты — используется для нескольких доменов;

При переходе на HTTPS мы воспользовались бесплатным “Let’s encrypt”, на хостингеSiteground. Он автоматически выдается и продлевается раз в 3 месяца.
После установки сепртификата на сервер проверьте, правильно ли «встал» ваш SSL-сертификат.
Сервисы:

  1. Проверка качества защиты сервера SSL LABSSSL Server Test
  2. Сканирование частей страниц SSL-check

Если сервис нашел проблемы в конфигурации сервера или показал, что вы не установили промежуточные и корневые сертификаты, то лучше как можно быстрее решить эти проблемы до остальных работ.

Подготовка к переходу на HTTPS

Подготовка смены протокола начинается с замены абсолютных внутренних ссылок на сайте на относительные. Кроме того, заменяются также адреса скриптов, картинок, видео и кодов ремаркетинга на относительные с доменным именем, но без протокола HTTP.

Например:
http:/ /roman.ua/internet-marketing/mobile-friendly-email/

/internet-marketing/mobile-friendly-email/

Существует и второй тип относительных ссылок, когда используется доменное имя в адресе ссылки, но не указан протокол.

Например:
http:/ /roman.ua/internet-marketing/mobile-friendly-email/

//roman.ua/internet-marketing/mobile-friendly-email/ (наш выбор)

Если источник имеет HTTPS версию, вы можете просто заменить ссылки на соответствующий контент. Это будет актуально для крупных компаний — Google, Яндекс, Facebook, Вконтакте. Остальные картинки мы рекомендуем загрузить на свой сервер и открывать их по защищенному протоколу. Это поможет в дальнейшем избежать ошибки со смешанным содержимым.
Кроме того, все внешние скрипты, например, библиотеки javascript и jQuery, а также скрипты сервисов Яндекса (например, Метрика и Директ), а также Google AdWords и Analytics следует открывать через относительные URL-адреса.

Например:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js">

<script src= "//ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js">

Переход на HTTPS

Тест работы вручную

Тестируем работу в разных браузерах и операционках, например на BrowserStack. Нужно посмотреть на цвет замочка во время просмотра сайта: зелёный или серый. Определить, нет ли ошибок в консоли о том, что часть элементов загрузилась небезопасно.

Поправьте картинки, скрипты, где инструмент https://www.jitbit.com/sslcheck/ нашел, просматриваем вручную в Mozilla Firefox, ищем поломанный замочек.
Перегенерируйте sitemap.xml, чтобы он содержал ссылки на https-версии страниц и добавьте сайт в версии https в webmaster-панели Google и Яндекс.

Настройка 301-го редиректа с HTTP на HTTPS

Следующий шаг — настройка переадресации каждой HTTP-страницы на соответствующую ей HTTPS-страницу.

Мы используем постоянный 301-й редирект «permament redirect», так как код 302 обозначает временное перемещение — «moved temporary»

Эта процедура соответствует переносу сайта на другой домен. Переадресация должна быть прямой и не включать промежуточных документов, иначе образуются цепочки редиректов, которые только запутают поисковых роботов и негативно повлияют ранжирование.

Вы можете осуществить переадресацию с HTTP на HTTPS с помощью .htaccess, если ваш сайт размещен на сервере Apache. Если ваш сайт создан на каком-либо языке программирования, настроить переадресацию можно прямо в коде сайта.
В файле robots.txt замените строку host для Яндекса, прописав в ней не просто доменное имя, а доменное имя вместе с https.

Нужно дать загружать robots.txt без редиректа.
Например:
http://roma.net.ua/robots.txt (В то время как http://roma.net.ua/ → https://roman.ua/)
SSL работает не для всех старых браузеров (в том числе в Windows XP и старых Android). Уточните правила на основе gist.github.com и stackoverflow.com

Сообщите поисковым системам о переходе на HTTPS

  1. Убедитесь, что все теги “rel=canonical” в HTML-коде указывают на страницы с HTTPS
  2. Обновите URL-адрес вашего сайта в социальных сетях и в системах отслеживания трафика, таких как Google Analytics и Yandex Metrika
  3. Создайте новую запись для ресурсов с HTTPS в Google Webmaster Tools и Яндекс.Вебмастер. Помните, что эти сервисы рассматривают версии сайта с HTTP и HTTPS как два разных ресурса. В вебмастере Яндекса нужно также выбрать, в инструменте Переезд, что теперь сайт по https:// работает

%D0%9F%D0%B5%D1%80%D0%B5%D0%B5%D0%B7%D0%B4+%D1%81%D0%B0%D0%B9%D1%82%D0%B0+%E2%80%94+https%3A%2Froman.ua+%E2%80%94+%D0%AF%D0%BD%D0%B4%D0%B5%D0%BA%D1%81.%D0%92%D0%B5%D0%B1%D0%BC%D0%B0%D1%81%D1%82%D0%B5%D1%80+2016-08-19+16-11

  1. По возможности обновите важные внешние ссылки на ваш веб-сайт, чтобы они вели на URL-адрес с HTTPS
  2. Убедитесь, что поисковые системы могут индексировать и предоставлять содержимое вашего ресурса по новому URL-адресу
  3. Ежедневно отслеживайте сайт с HTTPS в Google Webmaster Tools и в Google Analytics, чтобы предупредить возможные проблемы с индексацией и загрузкой вашего сайта

Результат

301-й редирект передает, по слухам, от 85 до 99% веса ссылки, поэтому переход с HTTP на HTTPS может вызвать колебания в объемах трафика и в позициях сайта. Падение трафика также может быть обусловлено тем, что будут слабеть внешние ссылки, которые ранее вели на HTTP версию вашего ресурса.

При правильных работах позиции и трафик восстанавливаются уже через несколько месяцев после того, как перешли с HTTP на HTTPS.

В нашем случае было от 2000 до 2500 переходов с поисковых систем в месяц. После перехода стало от 1700 летом до 2000 в августе. Учитывая, что летом много отпусков, а нас читает бизнес аудитория — то можно сказать, что трафик сохранился.

Автора автора