Как найти и убрать смешанный контент на сайте с HTTPS

Как найти и убрать смешанный контент на сайте с HTTPS

О важности перехода на HTTPS уже даже перестали говорить — это и так всем известно. Более того, большинство активно развивающихся сайтов уже давно перешли на защищенный протокол.

Тем временем Google от рекомендаций перешел к более активной мотивации — начал блокировать сайты, которые используют HTTP. Казалось бы, у вас HTTPS, и нечего переживать по этому поводу. Но есть нюанс: если на сайте есть смешанный контент, вы рискуете попасть под горячую руку Google, несмотря на то, что большинство страниц подгружаются по HTTPS.

В статье рассказываем о том, что считается смешанным контентом, почему Google с ним борется, как найти его на своем сайте и устранить.

Что считается смешанным контентом и почему от него следует избавиться

Смешанный контент — наличие на HTTPS-сайте контента, который доступен только по старому протоколу HTTP.

Например, у вас сайт давно переведен на HTTPS, и все страницы по умолчанию доступны по защищенному соединению — https://site.ru. Но на главной странице есть картинка, которая до сих пор загружается по незащищенному протоколу — http://site.ru/image.

По спецификации W3C смешанный контент делится на две группы:

  • блокируемый (к этому виду относится активный контент — скрипты, фреймы и т.д.). Такой контент представляет интерес для злоумышленников, так как его можно использовать для внедрения вредоносного кода. А это влечет за собой угрозу сайту, пользователям и пользовательским данным. Большинство такого контента по умолчанию блокируется браузерами.
  • опционально блокируемый (пассивный контент — изображения, видео, аудио). Он не несет в себе прямой угрозы. Например, злоумышленники не могут с его помощью получить доступ к персональным данным пользователей или заблокировать работу сайта. И все же некоторая опасность сохраняется. К примеру, изображения можно заменить на другие. Это может привести к дезинформации пользователей или нанести ущерб репутации сайта (например, при размещении контента 18+).

Если изображения, аудио или видео доступны на сайте только по протоколу HTTP — браузер их заблокирует. Чтобы этого не произошло, такой контент нужно выявить и обеспечить его доступность по протоколу HTTPS.

Планы Google по отношению к смешанному контенту

С 2017 года в адресной строке Chrome начало отображаться уведомление «Not secure», если пользователь начинал заполнять формы ввода данных на сайте с HTTP.

Как найти и убрать смешанный контент на сайте с HTTPS

Годом позже (после релиза Chrome 68) Google стал показывать «Not secure» по умолчанию для всех сайтов, которые не перешли на протокол HTTPS.

Как найти и убрать смешанный контент на сайте с HTTPS

Самое интересное началось в 2019 году — Google объявил о планах постепенно избавляться от подгрузки ресурсов на сайтах по незащищенному протоколу HTTP.

  • В Chrome 79 (декабрь 2019 года) была реализована возможность разблокировать активный контент, который браузер блокирует по умолчанию:
Как найти и убрать смешанный контент на сайте с HTTPS
  • В Chrome 80 браузер начал автоматически пытаться подгрузить аудио- и видеоконтент по https://. Если контент доступен только по http://, он блокируется браузером. При этом ресурсы все еще можно разблокировать вручную. В этой версии браузера изображения могут подгружаться по старому протоколу http://, однако в адресной строке отобразится сообщение о незащищенном соединении:

Как найти и убрать смешанный контент на сайте с HTTPS
  • И наконец, к релизу Chrome 81 (февраль 2020) Google планировал обновление в отношении изображений. Если на HTTPS-сайте путь к изображениям прописан с использованием старого протокола, Chrome автоматически попытается загрузить их по https://. Если в этом случае изображения не смогут подгрузиться, браузер их заблокирует.

Важно! 4 июня 2020 года Google сообщил о переносе релиза функции на версию Chrome 84.

Активное подталкивание к миграции на https дало свои плоды: с ноября 2018 по ноябрь 2019 года доля сайтов, использующих защищенный протокол, выросла с 43,5% до 56,5%:

Как найти и убрать смешанный контент на сайте с HTTPS

По состоянию на сентябрь 2020 года протокол https:// по умолчанию используют 64,8% сайтов:

Как найти и убрать смешанный контент на сайте с HTTPS

В России 85% страниц, которые пользователи загружают в браузере Google Chrome, по умолчанию доступны по https://. В 2015 году доля таких страниц была на уровне 28%.

Как найти и убрать смешанный контент на сайте с HTTPS

Сам Chrome в России популярен среди 41% пользователей:

Как найти и убрать смешанный контент на сайте с HTTPS

Это существенная доля, поэтому стоит по максимуму избавляться от смешанного контента, если такой есть на сайте. Иначе из-за блокировки можно потерять позиции в поиске.

Ищем смешанный контент на сайте

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

По наличию предупреждения в адресной строке браузера

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

В исходном коде мы видим:

  • сама страница доступна по протоколу https:// — тут все в порядке;
  • изображение, которое находится на странице, расположено по адресу с незащищенным протоколом http://:
Как найти и убрать смешанный контент на сайте с HTTPS

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

Как найти и убрать смешанный контент на сайте с HTTPS

Похожее уведомление показывает и Мозилла:

Как найти и убрать смешанный контент на сайте с HTTPS

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

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

Поиск по исходному коду

Так можно проверить отдельные страницы сайта и оценить, насколько много смешанного контента на них.

Для этого:

  1. Переходим на страницу и открываем режим просмотра исходного кода (Ctrl + U).
  2. Жмем Ctrl+F и вводим «http:» для поиска по странице.
Как найти и убрать смешанный контент на сайте с HTTPS

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

С помощью консоли разработчика

Переходим на страницу, которую необходимо проверить, и жмем сочетание клавиш Ctrl + Shift + I для Windows или Cmd + Opt + J для Mac (откроется консоль разработчика). Если на странице обнаружен смешанный контент, в консоли отобразятся ошибки «Mixed Content».

Как найти и убрать смешанный контент на сайте с HTTPS

Консоль удобна тем, что в ней отображаются сразу все ошибки, которые система нашла на странице. Так вы сможете понять, что именно подгружается по незащищенному протоколу и оценить объем работ по устранению. Единственный минус этого способа — нельзя автоматизировать проверку большого количества страниц.

SSL-чекер от JitBit

JitBit — бесплатный сервис, который поможет быстро определить, есть ли на сайте смешанный контент и на каких именно страницах.

Работать с сервисом предельно просто:

  1. Указываем домен.
  2. Жмем «Check for SSL errors».
  3. Дожидаемся проверки ресурса. Если на отдельных страницах сайта есть смешанный контент — сервис выдаст список URL таких страниц.
Как найти и убрать смешанный контент на сайте с HTTPS

Два недостатка:

  • Сервис дает только URL страниц, где обнаружен смешанный контент. К сожалению, нет отчета по самому контенту (то есть, чтобы выяснить, какой именно контент грузится по http, придется просматривать каждую страницу вручную).
  • Лимит на проверку одного сайта — 400 страниц. Если у вас больше — полноценно проверить свой сайт с помощью JitBit вы не сможете.

Анализ страниц сайта с помощью Lighthouse

Смешанный контент можно выявить с помощью Lighthouse — это бесплатный инструмент от Google с открытым исходным кодом для улучшения качества веб-страниц.

С помощью этого инструмента можно проверить любое количество URL и получить полный список ресурсов, которые подгружаются по HTTP.

Придется проделать некоторые дополнительные манипуляции, так как в Lighthouse по умолчанию нет отчета по смешанному контенту. Сейчас покажем, как это сделать.

1. Установите Google Canary (специальный браузер от Google для разработчиков).

2. Установите Node.js.

3. Запустите командную строку Node.js.

4. Пропишите и выполните следующую команду:

npm install -g lighthouse

Начнется установка Lighthouse.

Как найти и убрать смешанный контент на сайте с HTTPS

Если установка прошла успешно, в консоли отобразится такое сообщение:

Как найти и убрать смешанный контент на сайте с HTTPS

5. Пропишите команду для анализа и формирования отчета:

lighthouse --preset="mixed-content" URL

Вместо URL укажите адрес нужной страницы в формате site.ru.

Система начнет анализ страницы:

Как найти и убрать смешанный контент на сайте с HTTPS

После окончания анализа система сообщит об этом и покажет путь к сохраненному отчету.

Как найти и убрать смешанный контент на сайте с HTTPS

Отчет сохраняется в HTML и содержит две части:

  1. Использование HTTPS.
  2. Безопасная загрузка ресурсов.
Как найти и убрать смешанный контент на сайте с HTTPS

Если на странице найден смешанный контент, в отчете вы увидите список ресурсов, в URL которых используется протокол http.

Как проверить массив URL

Чтобы проверить сразу группу страниц или все страницы сайта, воспользуйтесь следующей инструкцией:

1. Создайте файл .txt (в Блокноте или любом другом текстовом редакторе). Разместите в файле список URL, которые необходимо проверить.

Как найти и убрать смешанный контент на сайте с HTTPS

2. Затем создайте файл с расширением .bat и разместите в нем следующий код:

@For /F "UseBackQ Delims=" %%A In ("C:\Users\light\urls.txt") Do @LightHouse "%%A" --preset="mixed-content"

Вместо "C:\Users\light\urls.txt" укажите путь к своему текстовому файлу со списком страниц.

3. Откройте командную строку и запустите файл .bat.

Как найти и убрать смешанный контент на сайте с HTTPS

Подождите, пока Lighthouse проверит все страницы и сформирует отчет (время формирования отчета зависит от количества страниц, которые вы проверяете).

Проверка страниц с помощью Screaming Frog

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

В Screaming Frog SEO Spider много различных функций, но нам понадобится отчет «Insecure Content». После запуска инструмент проанализирует ваш сайт и подготовит список всех ресурсов, подгружаемых по http.

Единственный минус — инструмент платный, стоимость лицензии — £149 в год.

Как найти и убрать смешанный контент на сайте с HTTPS

Кстати, с помощью Screaming Frog можно парсить любую открытую информацию с любого сайта. Об этом у нас есть подробная статья с инструкцией.

Как устранить смешанный контент

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

И тут может быть два варианта — ссылки с HTTP могут вести на внутренние ресурсы или на внешние.

В первом случае все решается достаточно быстро и просто — после миграции на https необходимо лишь поменять ссылки с абсолютных на относительные, настроить необходимые редиректы и все внутренние ресурсы автоматически подгружаются правильно.

Если же на сайте есть внешние ресурсы — тут ситуация посложнее.

Базово алгоритм решения проблемы с внешними ресурсами выглядит так:

  • ищем ресурс, у которого URL с http (например, картинку);
  • проверяем, подгружается ли картинка, если использовать этот же URL, но с https;
  • если контент подгружается без проблем — просто прописываем в URL правильный протокол (https).

Что делать, если внешние ресурсы доступны только по http, а по https не подгружаются?

Есть несколько вариантов решения этой проблемы:

  1. Связаться с владельцем ресурса, где хостятся изображения или видео, и убедить его перевести сайт на https (вариант хорош в теории, но на практике вряд ли осуществим).
  2. Найти альтернативные ресурсы с https в качестве источников контента.
  3. Оставить все как есть. Это не очень хороший вариант с точки зрения Google, но если заменить ресурс совсем не получается, а контент важен для ваших пользователей — лучше оставить.

Плагины для автоматического устранения смешанного контента

Если при анализе сайта вы нашли один — два URL с http, их проще заменить вручную — отредактировать исходный код и указать правильный протокол.

Если же ссылок с http много, они размещены в стилях, скриптах и т.д. — тут нужен программист или специальные плагины.

Вот два популярных плагина для WordPress:

  • Really Simple SSL. Автоматически меняет ссылки с абсолютных на относительные и позволяет быстро решить проблему с наличием ресурсов, подгружаемых по http.
Как найти и убрать смешанный контент на сайте с HTTPS
  • SSL Insecure Content Fixer. Плагин позволяет быстро исправить ссылки, в которых используется устаревший протокол. В настройках плагина доступно несколько уровней исправления. Рекомендуется начать с простого, так как он незначительно влияет на производительность сайта.

Как найти и убрать смешанный контент на сайте с HTTPS

Важно! Будьте аккуратны при работе с плагинами. Вносите изменения только тогда, когда точно понимаете, что именно сделает плагин. Перед каждым изменением делайте резервную копию сайта. Если что-то пойдет не так — вы сможете без проблем откатить изменения и вернуться к предыдущей версии.

Нет времени разбираться в тонкостях поиска и ликвидации смешанного контента? Специалисты PromoPult сделают все необходимые работы за вас в рамках модуля SEO. Все по чек-листу и в оговоренные сроки. Возможна оплата в рассрочку. Регистрируйтесь в PromoPult и забудьте о технических проблемах на сайте.

33
6 комментариев

Как сложно всё. Давайте упростим:
качаете бесплатный SiteAnalyzer (https://site-analyzer.ru/), ищете кривые ссылки, абсолютные меняете на относительные. Всё.
Притом если есть голова в дополнение к рукам, можно все правки внести батчем (хоть через правку файлов, хоть через БД - в зависимости от используемой CMS).
И к слову. Google блокирует сайты с кривыми SSL (или с теми SSL, с чьим издателем он поссорился). http не блокирует до сих пор. Как и фактором ранжирования, похоже, не считает. Как минимум, в рунете при переносе сайтов на https я ни разу не заметил положительного влияния на ранжирование.
Если у вас есть статистика на этот счёт, хотелось бы посмотреть.

4
Ответить

Да нет у них такой статы. И писать статью http/https следовало два года назад.
Тоже удивляет, "как найти?" .... Жмакнуть F12 и посмотреть что криво грузится, потом (если не знаешь) гуглить как исправить.)) 

1
Ответить

Если у вас сайт изначально идет без ssl то никакие браузеры его блочить не будут. Если вы поставите ssl а потом уберёте, то начнутся блокировки. У меня хватает сайтов без ssl и никто их не блочит и трафик есть даже с новых доменов. 

Ответить

Привет! Если пригодиться - сделал сервис для смешанного контента. Могу предоставить доступ на попробовать. Более подробно http2https.hrna.ru

Ответить