HSTS — бесплатная технология для улучшения SEO и безопасности. Что такое HSTS? Зачем использовать? Как внедрить?
29 октября 2020
Автор: User

HSTS — бесплатная технология для улучшения SEO и безопасности. Что такое HSTS? Зачем использовать? Как внедрить?

Приемы в поисковой оптимизации изменяются. Внедряются дополнительные факторы ранжирования.

Механизм HSTS относится к внутренней оптимизации, и должен использоваться на всех сайтах.

Что такое HSTS? На что влияет? Как настроить?

Разберемся с вопросами далее.

Механизм HSTS


HSTS напрямую связан с безопасным соединением. Сначала кратко разберемся с темой применения HTTPS.

В целях поисковой оптимизации практически все сайты переведены на HTTPS.

HTTPS для сайта в целях поисковой оптимизации

Нет оснований продолжать использовать протокол HTTP.

Yandex, Bing рекомендуют HTTPS.

Yandex уведомление по теме SSL

Google рекомендует HTTPS. Есть заявление от поисковой системы:

example, is important, but of course I can’t expect everyone to go HTTPS. Some people don’t have the resources for that. Some people just don’t want to do it for reasons. I don’t know.

It’s important in general, but if you don’t do it, it’s perfectly fine. If you’re in a competitive niche, then it can give you an edge from Google’s point of view. With the HTTPS ranking boost, it acts more like a tiebreaker. For example, if all quality signals are equal for two results, then the one that is on HTTPS would get or may get the extra boost that is needed to trump the other result.

Сайты на HTTPS, HTTP считаются разными сайтами, поэтому следует использовать 301-ый редирект. Поисковая система Google не дисконтирует ссылочный вес.

HTTPS и передача веса через PageRank

Как настроить 301-ый редирект? Рекомендованный материал в блоге MegaIndex на тему HTTPS по ссылке далее — Зачем и как перевести сайт на HTTPS бесплатно и без ошибок?

Редирект с HTTP на HTTPS без потери ссылочного веса

Но использование только 301-го редиректа является недостаточным. Еще следует использовать HSTS.

Что такое HSTS и зачем надо? HSTS является технологией, которая ограничивает открытие сайта из браузера только по протоколу HTTPS.

Название HSTS происходит от HTTP Strict Transport Security.

Какие браузеры поддерживают HSTS? Любой популярный браузер.

HSTS поддержка в интернет браузерах

Ссылка на список — HSTS в браузерах.

HSTS в SEO


Как HSTS влияет на SEO? При переходе на HTTPS на большинстве сайтов не проводится важная работа по переработке контента.

В лучшем случае на сервере используется правило постраничного 301-го редиректа.

Схема выглядит так:

HTTPS редирект

Но 301-ый редирект решает лишь часть проблематики.

Появляются лишние запросы между сервером и сайтом. Лишние запросы приводят к снижению скорости загрузки сайта. HSTS максимально минимизирует количество запросов между клиентом и сервером.

HSTS также решает проблему смешанного контента. Что такое смешанный контент на странице? Смешанным контентом считаются вставки javascript и iframe, ссылки на которые встроены в страницу с указанием протокола HTTP. Например:

  • Страница открывается по безопасному соединению;
  • На странице встроена библиотека javascript или код iframe, который подключается по протоколу HTTP.

Плеер YouTube встраивается через iframe.

В браузере предусмотрено предупреждение, которое выводится при наличии mixed content.

301-ый редирект не решает проблематику.

Форсированное защищенное соединение HSTS решает все приведенные выше проблемы, поскольку вставки открываются по HTTPS даже в случае намеренного запроса по HTTP.

Еще решается проблема с атакой на сайт, известной по названию SSL stripping attacks.

Схема запросов и ответов при HSTS другая.

Процесс оптимизирован:

Использование HSTS на сайте в целях SEO продвижения

Браузер использует 307 редирект. Никакого негативного влияния на поисковую оптимизацию нет, поскольку краулер поисковой системы получает код ответа 301 от сервера.

Для пущей уверенности, разъяснение Google:

Хотя HSTS действует как переадресация, это не истинный редирект, поскольку его могут видеть только браузеры. Для Googlebot он ничего не означает.

Когда Googlebot будет сканировать HTTP-страницу с HSTS, то он не будет переадресован на HTTPS-версию, как это было бы в случае браузера.

Мюллер также отметил, что HSTS не поможет Google найти новые ссылки. Поэтому при переводе сайта с HTTP на HTTPS нужно настроить 301 редиректы.

HSTS – это вспомогательный инструмент, который должен использоваться в связке с истинными редиректами, чтобы владелец сайта мог быть уверен в том, что пользователи попадут на защищённые страницы.

Механизм предоставляет ряд преимуществ. Использование не требует никаких затрат. Все бесплатно.

Как внедрить?

HSTS: как подключить


Самый простой способ заключается в создании директивы для сервера в файле .htaccess.

Если не знаете как найти файл, обратитесь в поддержку хостинговой компании, попросите активировать HSTS.

Откройте файл .htaccess, пропишите строку:

Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"

В результате все страницы сайта будут запрашиваться браузером через HTTPS.

Параметры следующие:

  • max-age=[значение] задает время, в секундах, которое указывает браузеру на период, в течение которого сайт доступен только по протоколу HTTPS;
  • includeSubDomains является опциональным параметром, указывающим на применения правила к поддоменам.

Обязательно ли добавлять сайт в список hstspreload? Нет. Добавление ресурса в список под названием HSTS preload указывает браузерам, что при первом обращении страница сайта должна быть открыта по HTTPS. Больше никаких значимых плюсов от размещения в списке для большинства сайтов нет.

HSTS: как проверить


Как проверить работает ли HSTS? Есть бесплатный сервис для проверки.

Ссылка на инструмент — Проверка HSTS.

Проверить сайт на различные ошибки позволяет инструмент от MegaIndex, применяя который можно провести бесплатный аудит по различным параметрам.

Ссылка на сервис — Аудит сайта.

Пример отчета далее:

Аудит сайта на предмет тега title

Выводы


При переезде сайта на HTTPS важно решить проблемы с контентом, который был опубликован ранее.

HTTP Strict Transport Security (HSTS) является механизмом безопасности, который позволяет сайту объявить себя доступным только по безопасным соединениям.

301-ый редирект решает не все задачи. Проблематика следующая:

  • Расходуется лишний сетевой трафик. Появляется лишняя нагрузка на сервер;
  • Снижается скорость загрузки сайта.

Что делать? Использовать механизм HSTS. В результате сайт в браузере будет загружаться только по HTTPS, и быстрее.

HSTS на сайте

На сервере следует использовать 301-ый редирект. В результате будет сохранено влияние внешнего ссылочного профиля на ранжирование.

Остались вопросы по теме? Знали ли про HSTS? Напишите в комментариях.

Обсуждение

seo
Понравилось. Сегодня обсудим это в команде. А есть какие-то оф.заявления от поисковиков на тему HSTS ?
ollegator777
а что делать с тем что было ранее прописано в .htaccess при переезде с HTTP на HTTPS ? Он остается или необходимо удалять? Не получится два правила?
Макаронный монстр
Они не будут конфликтовать. Это два независимых правила, поэтому оставляйте.
info
Спасибо за статью, получилось на сайте santehart.by сделать, но только добавлять нужно сразу строку такого вида
Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
vesyoloe
а что делать с редиректом 301? Оставлять?
o91n
я оставил, все работает!
Romeo
Спасибо за статью.
"Какие браузеры поддерживают HSTS? Любой популярный браузер"
А кто знает, сколько пользователей в России именно старых браузеров??? Если Вы не знаете посмотрите в Метрике и удивитесь, их очень много!
У нас сайт в котором применили вывод товаров на флексбоксе, так попалась клиентка, у которой была проблема с отображением сайта, посмотрели, а она была с древнего IE. Потом еще посмотрели, оказывается у нас много посетителей с мобильников: Android Browser (4-10 версий), Firefox Mobile (25,66,67,68,77,78,79,80,81) - и по ним 40% отказов. Пришлось подпилить, замечу, под старые браузеры!
В целом у нас сейчас отказов 5-15 % отказов.
Я всегда за все новое, если это новое продумано со всех сторон.
bitpad
Спасибо!
kozyrevamv
Вопрос. Эта технология подходит если сайт только переехал на https? Если сайт уже несколько лет находится на https, то по логике уже не нужны эти меры?
servir007
Спасибо за статью, очень полезна, на сайте bodrus.com получилось. Только непонятно насколько это будет пользительно для ПС.
o91n
Реализовал на сайте metahim.kz, вроде работает!
olezhka87m
приветствую! 301 редирект убирал?
o91n
нет, просто прописал в начале .htaccess
olezhka87m
тогда проверь редиректы, т.к 301 останется.
jeka0899
Щас будем пробовать вот на таком сайте=
olezhka87m
я не покажу свой сайт)))
a
Комментарий был удален
olezhka87m
так же говорили и раньше про HTTPS :) Поживем ..увидим.....
Romeo
Спасибо за инфу. Приятно когда люди пишут что-то по делу, а не "удалось внедрить", внедрить можно все что угодно.
pogozhev777
О чем ты говоришь
User
Удалил предыдущий комментарий, чтобы не вводил людей в заблуждение. С прямыми руками все работает.
super.expert6801
прописал на своих сайтах Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload"
полёт нормальный
https://world-game-news.ru
https://world-avto.fun/
https://gold-musicpro.ru
https://recepty.fun/
offer
Спасибо за статью, у меня на сайте skvartiroi.ru тоже получилось. Посмотрим, что будет в итоге.
tema.level
Я не буду ничего использовать мне пофиг, вот сайт Лине на который я хочу оставит https://Deriv.plus спасибо за внимание
8722882
Как-то сомнительно. ПОпробую установить на https://mondeblick.schoo1.biz для начала... а там поглядим
Zaga89
точно хуже не будет. на https://mk-translations.ua/ внедрил, полет нормальный
kalabok1
пригодится
popoily
А я за перемены! Почитал еще пару подобных статей. Все пишут, что хуже точно не будет! Поставлили код на https://golden39.ru Полет нормальный.
fabergeviktor.71
Спасибо! Поставили на сайт https://victorfaberge.com/ Проверили - отлично работает! Побольше бы хороших статей в будущем! Ну, и самому МегаИндексу желаем применять то, что он другим рекомендует!!!
pogozhev777
советуйте!
Валентин
На мой взгляд, полезная штука. Об этом также говорится здесь: https://serpstat.com/ru/blog/chto-takoe-hsts/, а этому ресурсу я доверяю.
Подробно также о внедрении описано здесь: https://blog.sibirix.ru/2019/03/28/hsts/
На своем сайте (https://factum-info.net) мне сразу внедрить не получилось, сервис hstspreload.org выдавал ошибку:
Warning: Unnecessary HSTS header over HTTP
The HTTP page at http://factum-info.net sends an HSTS header. This has no effect over HTTP, and should be removed.
Погуглив, решение нашел на форуме https://forums.cpanel.net/threads/enable-hsts-on-cpanel-whm-interface.660685/, где советовали прописать такой код:
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" env=HTTPS
Техподдержка моего хостинга мне посоветовала внедрить следующий код в .htaccess:
Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" env=HTTPS
Сейчас все работает. Может кому пригодится эта инфа.
eduardko2001
"На сервере следует использовать 301-ый редирект." - можете подсказать, что именно надо прописать? или скинуть материал для изучения?
Заранее благодарю!
viachaslau85
Какая CMS?
Макаронный монстр
Один из вариантов написания 301-го редиректа (может меняться в зависимости от хостинга. Этот код мне предоставила техподдержка Timeweb, работает на нескольких сайтах):
# ===== Редирект с http на https: ======
RewriteCond %{HTTP:X-HTTPS} !1
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
Макаронный монстр
Если у вас WordPress, - впишите этот код в wp-config.php:
define( 'FORCE_SSL_ADMIN', true ); define( 'FORCE_SSL_LOGIN', true );
$_SERVER['HTTPS'] = 'on';
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false) $_SERVER['HTTPS']='on';
viachaslau85
Вот статья пришлась вообще впору! Как раз сейчас переезжал и в это же время заодно попросил сделать авторов своего шаблона, Аспро, аудит ( сайт https://centrmebeli.by ). Потому что были проблемы со скоростью. И вот теперь выступаю в роли испорченного телефона. Так вот фрагмент диалога:
Веб-сервер должен сжимать файлы в формат
GZIP, используя собственные процедуры или
сторонние модули. Это позволяет ускорить
загрузку ресурсов, необходимых для
отображения веб-сайта. - рекомендация Аспро.
Уточните, пожалуйста, речь идёт о хедерах HSTS?
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"; - вопрос Хостера.
Пока ответ не получен
Для справки в данный момент .htacces подобных записей не имеем.
Возможно сделают и тогда смогу отписать о внедрении.
Но не думаю, что хостер стал бы писать что-то подобное, если бы это опасно для моего сайта.
artugbaev
Установлено:
https://mosakril.ru
https://acryl.spb.ru/
Посмотрим!
sergey-plotnikov-biz
Поставил на свой самый популярный сайт https://pandda.me , если будет норм - поставлю на все остальные!
ahome1
Добавил на сайт помощи зависимым https://helprb.ru/ Всё работает. У меня вопрос там есть форма добавления в какой то список см скрин https://prnt.sc/v9vrpu Это необходимо?
innovatika23
Посмотрим, ставлю HSTS на сайт СРО проектировщиков https://psstandart.ru
Все норм!
innovatika23
Ставлю HSTS на сайт импортных стальных канатов с доставкой из СПб https://tros-steel.ru/katalog-kanatov
Все также норм!
salesintersumka
Подправьте в статье директиву на Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" - одного параметра времени не хватает, чтобы проходило валидацию на предложенном инструменте.
avelux
Все работает https://vipku.ru/ полет нормальный
info
Спасибо, будем пробовать ставить не сайт
stroygreen.ru
hramoff.p
Поставил на сайт https://gksokol.com/
yanona.shop
Протокол успешно установлен на сайт https://publish.com.ua, теперь сайт защищен.
avtorolla
Установил на https://nedvyga.ru проверил скорость загрузки по гуглу. До установки было 86/99, после 92/99, явное изменение скорости зафиксировал.
ollegator777
Тоже прописал Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" сервис показал что все заработало, из красной зоны перешел в зеленую. Код указанный в данной статье не рабочий, после проверки по прежнему был в красной зоне. Скорость через пейдж спид не изменилась, но в целом hsts оставлю, раз буржуа рекомендуют. Делал на сайте https://zubilo-perm.ru/
antant
Спасибо за статью. Оказывается в ispManager была включена такая опция, но они ставили заголовок без includeSubDomains и preload. Пришлось отключить и прописать вручную в .htaccess на https://adoa.ru
По возможности дополните статью надо ли добавлять после успешной проверки HSTS свой сайт в список hstspreload.org
ollegator777
Поделитесь пожалуйста ситуацией. У меня после внедрения перестал обрабатываться мой сайт на анализаторе http://www.sbup.com/ Это только у меня, или может у кого еще?
info
Заголовок прописан, ответ сервера "max-age=31536000; includeSubDomains; preload", но hstspreload.org выдает ошибку "Error: Subdomain".
kolya.opalko
Поставил на сайт https://vazon.pp.ua и какой-то разницы не заметил, буду ждать, может от ПС будет какая-то польза
a.bakshtanovsky
Интересная информация. Спасибо автору. Думаю тоже для своего блога https://ichinese8.ru подключить HSTS
dimura2589
Интересно, спасибо за информацию. Попробую внедрить
gluschenko.igor1991
Поставил в htaccess данную строку на сайт, но через проверку пишет что нет HSTS.
alexiy1984
Внедрил на сайт по ремонту ванной комнаты в htaccess такую строчку: Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" env=HTTPS
Всё заработало!!!
ivan
Ставили для сайта wordpress - помог код: Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" env=HTTPS
sitefromzero
Загорелась перейти на HSTS, попробовала даже панель сменить на хостинге на ISPmanager (там есть соответствующая галочка). Но что-то мой блог https://sitefromzero.info/ сильно "пострадал" при переезде и пришлось вернуться на CPanel. Стала искать альтернативные варианты решения и пробовать с .htaccess. Оказалось это так просто! Правда, ваш код выдал ошибку при проверке. Тогда добавила этот: Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" env=HTTPS
Ура! Случилось чудо! Мой сайт защищён! СMS WordPress, может кому-то будет полезно. Спасибо всем, кто делится инфой! И всех с Днём Сеошников (вчера как раз был)!
info
И мы добавили на нашем интернет-магазине - все отлично!
Для добавления комментария, пожалуйста, авторизуйтесь