При попытке соединения возникла ошибка смешанное активное содержимое запрещено

Иногда возникает следующая ситуация: вы заказали доверенный SSL сертификат, прошли проверку центром сертификации, установили сертификат на сервер. Все сделали верно, но при попытке перейти на ваш ресурс, браузер выдает ошибку: «Не удалось загрузить сайт, заблокирована загрузка смешанного активного содержимого». Или же, как вариант, веб-сайт загружается, но вместо закрытого замка в адресной строке браузер показывает желтый треугольник и сообщает о том, что соединение зашифровано только частично. Причина этих проблем – смешанное содержимое или смешанный контент (в английском варианте — mixed content) на вашем сайте.
Что же представляет собой смешанный контент? И, самое главное, как от него избавиться?

Что такое смешанное содержимое?

Все мы знаем, что при посещении веб-сайта, на котором клиент планирует ввести какие-либо личные данные, будь-то логин и пароль, ФИО, электронный или простой адрес, номера кредитных карт и прочее, следует обращать внимание, защищена ли эта страница SSL сертификатом. На это указывают некоторые визуальные признаки:

  • URL-адрес веб-сайта начинается с расширения https, а не http (например, https://emaro-ssl.ru)
  • В адресной строке браузера отображается иконка закрытого замка (чаще всего зеленого цвета)
  • Хорошо, если на сайте установлена печать защиты или Site Seal (но ее добавление опционально, поэтому ее отсутствие не всегда говорит об отсутствии SSL сертификата)
  • Если на сайт установлен SSL сертификат с расширенной проверкой, зеленая строка будет содержать и название компании-владельца домена на зеленом фоне.

Тем не менее, в некоторых случаях возникают проблемы с отображением содержимого сайта при наличии смешанного содержимого: например, в Google Chrome в адресной строке вместо зеленого замка показывается замок, перекрытый желтым треугольником. В Mozilla Firefox вместо замка показывается треугольник с восклицательным знаком, как на картинке ниже. Смешанное содержимое в браузерах
Кроме того, в окне браузера может появляться сообщение о том, что веб-страница содержит смешанное содержимое и информация отображается частично, либо полностью заблокирована и не отображается вообще. В каждом браузере сообщение о смешанном контенте может показываться по-разному, но суть одна – пользователь получает предупреждение и не сможет просмотреть все содержимое страницы, что, соответственно, оказывает негативное влияние на конверсию сайта в целом.

Internet Explorer:

Смешанное содержимое в Internet Explorer
Internet Explorer сообщает, что отображено только безопасное содержимое сайта, предоставленное через безопасный протокол https. У вас есть возможность отобразить весь контент страницы нажатием кнопки “Show all content” («показать все содержимое»).

Google Chrome:

Смешанный контент в браузере Chrome
Браузер Google Chrome пишет, что данная страница содержит скрипт из непроверенного источника. Вы можете загрузить все содержимое сайта, нажав на ссылку “Load unsafe content” (“Загрузить небезопасное содержимое)”.

Mozilla Firefox:

Смешанное содержимое в Mozilla Firefox
Mozilla Firefox также блокирует небезопасное наполнение, однако информирует, что большинство веб-сайтов продолжают работать, несмотря на заблокированное содержимое. Если вы видите одно из этих предупреждений, это значит, что, несмотря на установленный SSL сертификат, соединение не может быть полностью защищено, так как некоторые файлы загружается по http-каналу. Соответственно, эта информация может быть просмотрена или изменена третьими лицами. Поэтому на сайтах со смешанным содержимым не рекомендуется оставлять личную информацию, такую как, например, банковские и паспортные данные, логины и пароли, адреса и так далее.

Почему смешанное содержимое блокируется?

По сути, смешанное содержимое или смешанный контент – это смешанные скрипты протоколов https и http. Дело в том, что если не все наполнение сайта состоит из файлов, загружаемых по протоколу https, и на странице имеется часть контента, загружаемого по протоколу http, то такое соединение может быть защищено только частично. В результате, казалось бы безопасное соединение является не совсем безопасным. Почему же возникают проблемы со смешанным содержимым, и к каким последствиям может это привести? SSL сертификат гарантирует защищенное https-соединение. Соответственно, при установленном SSL сертификате страницы веб-сайта должны загружаться только по протоколу https. Если использовать на безопасном сайте также части контента по http, появляются пробелы в безопасности соединения между веб-сайтом и Интернет пользователем. Следовательно, мошенники или просто третьи лица, заинтересованные в получении конфиденциальных данных, могут заменить части сайта с http на преднамеренно измененную информацию и тем самым скомпрометировать веб-страницу. Заполучив личную информацию посетителей, ее могут использовать в своих корыстных целях.

Каким бывает смешанный контент?

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

Пассивное смешанное содержимое

Пассивное смешанное содержимое (от англ. Mixed passive content или Mixed display content) – часть страницы, которая отображается на сайте, несет в себе какую-либо информацию, но напрямую не влияет на функционирование сайта. Пассивный смешанный контент появляется, когда на защищенной веб-странице загружается картинка, видеозапись, звуковой файл или объект через http протокол. Мошенники могут заменить соответствующую часть контента дезориентирующей информацией, содержащей cookie-файлы, и таким образом смогут собирать информацию о перемещении пользователя на страницах. Картинку на сайте потенциально могут заменить другим изображением, содержащим неверную информацию или какой-либо призыв к пользователю. Большинство браузеров не блокируют полностью все содержимое пассивного типа, а предупреждают о присутствии такой информации на сайте в виде специального знака , как это было показано на примерах выше. Такой вид смешанного содержимого встречается очень часто на различных веб-сайтах. Предупреждение о смешанном пассивном содержимом на Google Chrome выглядит так: Пассивное смешанное содержимое в Google Chrome

Виды пассивного смешанного контента:
  • src атрибут <audio> — звуковой файл
  • src атрибут <img> — изображение
  • src атрибут <video> — видеозапись
  • субресурсы <object> — запрос каких-либо файлов веб-сайта по http

Активное смешанное содержимое

Активное смешанное содержимое (от англ. Mixed Active Content) – куда более опасный тип смешанного контента. В данном случае через небезопасный http протокол загружаются файлы, которые могут вносить изменения на странице, загружаемой по https-соединению, и потенциально украсть личные данные, вводимые пользователями. Таким образом, вместе с описанными выше рисками, которым подвергает безопасность страницы пассивный контент, активное смешанное содержимое влечет за собой и другие, более опасные угрозы. Так, с его помощью мошенник может перехватить запрос на http контент или изменить ответ сервера, добавив в него вредоносный код JavaScript, который в свою очередь может украсть имя пользователя и пароль, заполучить личные данные или попытаться установить вредоносное ПО на операционной системе пользователя. Большинство браузеров блокирует активное смешанное содержимое. К нему относятся следующие http запросы:

  • data атрибут <object> — выбор файла, который отображается на странице
  • href атрибут <link> — исходящие ссылки
  • src атрибут <script> — файл скрипта
  • src атрибут <iframe> — файл, отображаемый во фрейме
  • атрибут XMLHttpRequest – объект, с помощью которого JavaScript делает http-запросы к серверу, не перезагружая страницу

Как исправить смешанное содержимое?

После установки SSL сертификата, необходимо обязательно проверять, правильно ли работает веб-страница, корректно ли настроена переадресация, все ли ссылки внутри сайта открываются по протоколу https. Для проверки смешанного контента рекомендуем использовать браузер Google Chrome.

  1. В первую очередь обратите внимание, как отображается Ваш URL-адрес. Если замочек перед адресом зеленый – проблем с https-соединением нет. Если он перекрыт желтым треугольником, скорее всего, речь идет как раз о смешанном содержимом.
  2. В окне кликните правой кнопкой мыши и перейдите по ссылке «Просмотр кода элемента». Это же можно сделать, нажав комбинацию клавиш Ctrl+Shift+I.
  3. Внизу окна браузера появится окно, перейдите в последнюю вкладку Console («Консоль»). В ней будут перечислены проблемные ссылки после предупреждения «Mixed Content: и далее перечисление файлов, которые загружаются по протоколу http», как на примере ниже:

Все, что Вам нужно сделать, — это заменить все http-ссылки на https. Для того, чтобы избежать появления смешанного содержимого при переходе на https, рекомендуем изначально все ссылки внутри сайта оформлять как динамические. Тогда при переходе на https-соединение, они автоматически будут меняться на https-ссылки.

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

Оглавление

  • 1 Что такое смешанное содержимое и каковы риски?
  • 2 Как я могу узнать, что страница имеет смешанное содержимое?
    • 2.1 Смешанное содержимое отсутствует: безопасно
    • 2.2 Смешанное содержимое не заблокировано: не безопасно
  • 3 Разблокировка смешанного содержимого

Что такое смешанное содержимое и каковы риски?

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

Когда вы посещаете страницу, полностью переданную по протоколу HTTPS, например такую, как страница вашего банка, вы увидите значок замка Fx70GreyPadlockFx89Padlock в адресной строке (для получения подробной информации прочитайте статью Как мне узнать, является ли мое соединение с веб-сайтом безопасным?). Это означает, что ваше соединение аутентифицировано и зашифровано и, таким образом, защищено как от перехватчиков, так и от атак человек-по-середине.

Однако если страница HTTPS, которую вы посещаете, содержит HTTP-контент, часть HTTP может быть прочитана или изменена злоумышленниками, даже если главная страница передаётся через HTTPS. Когда страница HTTPS имеет HTTP-контент, мы называем этот контент «смешанным». Страница, которую вы посещаете, только частично зашифрована, и хотя она выглядит безопасной, это не так. Для получения дополнительной информации о смешанном контенте (активном и пассивном), прочитайте это сообщение в блоге.

Каковы риски смешанного контента? Злоумышленник может заменить содержимое HTTP на странице, которую вы посещаете, чтобы украсть ваши учётные данные, захватить вашу учётную запись, получить конфиденциальные данные о вас или попытаться установить вредоносное ПО на ваш компьютер.

Как я могу узнать, что страница имеет смешанное содержимое?

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

FF70 Gray PadlockFx89AddressBarPadlock

Смешанное содержимое отсутствует: безопасно

Смешанное содержимое не заблокировано: не безопасно

Дополнительные сведения о смешанном активном и пассивном содержимом прочитайте в статье Содержимое на сайтах в браузере Mozilla.

Разблокировка смешанного содержимого

Разблокировка небезопасных элементов не рекомендуется, но она может быть выполнена, если это необходимо:

  1. Щёлкните по значку замка Fx70GreyPadlockFx89Padlock в адресной строке.
  2. Щёлкните по стрелке на панели Информация о сайте:
    Mixed Content FF70Fx87MixedContentFx89MixedContent
  3. Щёлкните Пока отключить защиту.
    Disable Protection FF70 Fx87MixedContent-UnblockFx89MixedContent-Unblock

Чтобы включить защиту, выполните предыдущие шаги и щёлкните Включить защиту.

Внимание: Разблокировка смешанного содержимого, может сделать вас уязвимым для атак.

Эти прекрасные люди помогли написать эту статью:

Illustration of hands

Станьте волонтёром

Растите и делитесь опытом с другими. Отвечайте на вопросы и улучшайте нашу базу знаний.

Подробнее

When attempting to view my site over https, I keep getting a «Blocked loading mixed active content» error in my Firefox console. I am getting this error only for my css and js file.

The reason I am so confused is because the reference to the files in the page code itself is https:

<link rel="stylesheet" href="https://www.example.com/style.css">

But in the console, it shows it as http:

Blocked loading mixed active content «http://www.example.com/style.css»[Learn More]

I can do a view source on the page and search for «http://» and there are no results anywhere on the page.

Any ideas?

ROMANIA_engineer's user avatar

asked Aug 31, 2015 at 8:47

MultiDev's user avatar

2

I think that you can try with relative protocol caller.

<link rel="stylesheet" href="//www.example.com/style.css">
                    ---------^^

if your users visit your web in http, it loads http, and if the user visit under https it loads https.

answered Aug 31, 2015 at 8:54

Marcos Pérez Gude's user avatar

6

Каждый владелец сайта слышал о необходимости перевода своего сайта на HTTPS-протокол. Если еще несколько лет назад установка SSL-сертификата на сайт казалась какой-то непонятной и ненужной процедурой, то сейчас бо́льшее удивление вызывают сайты, которые до сих пор работают по незащищенному протоколу (да, они и сейчас существуют).

Более того, если раньше вопрос безопасности информации на сайте был делом сугубо добровольным, то сейчас, когда появляются все более изощренные способы обмана пользователей, к борьбе с мошенниками и заботе о пользователях подключились мировые корпорации. Так, в 2018 году компания Google в своем браузере стала помечать сайты, работающие по HTTP-протоколу, как небезопасные. И впереди нас ждет еще одно важное нововведение. Оно касается «mixed content» (или смешанного контента, содержимого сайта). 

Что такое HTTP, HTTPS и SSL

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

Протокол HTTP используется в интернете для передачи различных данных. Именно благодаря ему вы можете запрашивать и получать информацию на сайте (или, если говорить более точно, на сервере, где расположен сайт). Проблема в том, что все эти данные передаются в незашифрованном виде, а это значит, их может перехватить и увидеть кто-то другой. Когда речь идет о конфиденциальной информации, например, о данных вашей банковской карты, то это может обернуться значительными финансовыми потерями. 

Для того чтобы обезопасить передачу данных, было придумано расширение протокола HTTP, которое носит название HTTPS (S в конце расшифровывается как «Secure» «защищенный»). При использовании HTTPS-протокола данные обеспечиваются криптографической защитой и уже не попадут в руки мошенников. 

А для того чтобы сайт мог работать по HTTPS-протоколу, на него необходимо установить SSL-сертификат. Именно он обеспечивает безопасное соединение между вашим браузером и сервером, где находится сайт.

Проблема смешанного контента

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться

Почему возникает ошибка смешанного контента

Как правило, установка SSL-сертификата на сайт это быстрая и довольно простая процедура. Но иногда из-за нее на сайте возникает ошибка смешанного контента (mixed content). Это ситуация, когда часть информации (основной контент страницы) передается по защищенному протоколу, а другая часть (чаще всего это дополнительные элементы, к примеру, изображения, видео или скрипты) по небезопасному HTTP-протоколу. 

Чем опасен смешанный контент на сайте? 

  • Во-первых, подобное соединение (когда часть информации передается по незашифрованному протоколу) нельзя считать абсолютно безопасным, страница сайта так или иначе остается уязвимой. Даже если мошенники не смогут получить доступ к персональным данным, они смогут, например, отслеживать действия на сайте и использовать их в своих целях. 
  • Во-вторых, даже если на сайте установлен SSL-сертификат, страницы с такой ошибкой помечаются браузерами как небезопасные. Естественно, это напрямую влияет на отношение пользователей к вашему сайту и на вашу репутацию вряд ли кто-то будет делать покупки на сайте, владелец которого так халтурно позаботился о безопасности персональных данных. 
  • Наконец, проблема со смешанным контентом на сайте может привести к проблемам с SEO (особенно в тех случаях, когда злоумышленникам удается внедрить вредоносный код). 

Но главная причина, почему вам стоит уже сегодня решить проблему смешанного контента, касается нововведения от компании Google. О нем расскажем ниже. 

Chrome начнет полностью блокировать смешанный контент 

Продолжая свою политику по обеспечению безопасности в интернете, компания Google анонсировала, что после выхода 80-й версии Google Chrome в январе 2020 все элементы, которые грузятся по небезопасному протоколу (например, музыка и видеоролики), будут блокироваться.

Напомним, что уже сейчас Chrome блокирует смешанный контент, касающийся скриптов и iFrame. А уже через несколько месяцев любой незащищенный, передаваемый по HTTP, контент просто не будет отображаться пользователям. Поэтому если на вашем сайте есть проблема со смешанным контентом (или у вас вообще не установлен SSL-сертификат), мы рекомендуем уже сейчас подумать о том, как ее решить.

Как решить проблему смешанного контента 

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

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

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

Если вы являетесь клиентом Timeweb или хотите им стать, вы можете воспользоваться нашей акцией: при заказе и установке SSL-сертификата Timeweb Pro наши специалисты решат проблему смешанного контента бесплатно. Заказ, установку сертификата и исправление ошибки смешанного содержимого мы берем на себя.

Если у вас возникли какие-либо вопросы, связанные с SSL-сертификатами или нашим хостингом в целом, вы можете написать их в комментариях ниже, позвонить по бесплатному номеру 8 (800) 333-1081, а также написать в онлайн-чат или на почту info@timeweb.ru

Время на прочтение
7 мин

Количество просмотров 22K

Смешанный контент при загрузке с HTTPS: как найти и побороть

Необходимость перехода на HTTPS — это затертая пластинка. Большинство коммерческих сайтов и читаемых блогов уже давно работают на защищенном протоколе. Казалось бы, перешли и забыли. Но нет — Google не дремлет. В свое время он промотивировал вебмастеров переходить на HTTPS, сделав его фактором ранжирования. А теперь пустил в ход «негативное подкрепление» — начал тотальную блокировку ресурсов, подгружаемых по HTTP. И — сюрприз — ваш прекрасный HTTPS может ему не понравиться, потому что на сайте присутствует смешанный контент.

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

Как Google мотивирует переходить на HTTPS: от пряника к кнуту

Борьба Google за безопасность передачи данных путем использования HTTPS началась давно:

  • 2010 — запущен зашифрованный поиск Google;
  • 2011 — HTTPS начал использоваться для поиска Google и Gmail по умолчанию;
  • 2014 — загрузка сайта через HTTPS стала сигналом ранжирования;
  • 2015 — робот Google начал индексировать HTTPS версии страниц по умолчанию;
  • 2017 — в Chrome 62 во время ввода данных на сайтах с HTTP в адресной строке браузера начало появляться уведомление о незащищенном соединении («Not secure»);

Смешанный контент при загрузке с HTTPS: как найти и побороть

  • 2018 — в Chrome 68 все сайты на HTTP начали помечаться в адресной строке как незащищенные;

Смешанный контент при загрузке с HTTPS: как найти и побороть

  • 2019 — Google объявил, что будет планомерно двигаться к тому, чтобы на HTTPS страницах загружались только HTTPS ресурсы. Как следствие, Chrome начнет блокировать смешанный контент.

Блокировка будет внедряться постепенно:

  • Декабрь 2019 — в Chrome 79 появится возможность разблокировать заблокированное содержимое. С помощью этой опции можно будет разблокировать скрипты, фреймы и другие виды контента, которые Chrome блокирует по умолчанию. Выглядеть эта опция будет так:

Смешанный контент при загрузке с HTTPS: как найти и побороть

  • Январь 2020 — в Chrome 80 аудио- и видеоконтент будет автоматически загружаться с HTTPS. Если загрузка по HTTPS не будет успешной, Chrome заблокирует такие ресурсы. При необходимости пользователи смогут вручную разблокировать их. В Chrome 80 изображения, загружаемые на HTTPS-сайтах c HTTP, блокироваться не будут, но появится сообщение, что соединение небезопасное.

Смешанный контент при загрузке с HTTPS: как найти и побороть

  • Февраль 2020 — в Chrome 81 изображения будут автоматически загружаться с HTTPS. Если они окажутся недоступными, браузер заблокирует их.

Блокировка смешанного контента применяется не только в Chrome. Например, активное содержимое блокирует Firefox (с версии 23), Internet Explorer (с версии 9) и другие браузеры. Но к блокировке картинок, аудио и видеоконтента приступили именно в Google.

В результате стимулирования перехода на защищенный протокол доля сайтов, которые используют HTTPS, за последний год увеличилась с 43,5% до 56,5%.

Смешанный контент при загрузке с HTTPS: как найти и побороть

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

Смешанный контент при загрузке с HTTPS: как найти и побороть

С учетом того, что в России браузер Chrome использует около 41% пользователей, к блокировке смешанного контента стоит подготовиться, чтобы не потерять трафик и позиции в органике.

Смешанный контент при загрузке с HTTPS: как найти и побороть

Модуль SEO в системе Promopult: все инструменты для улучшения качества сайта и поискового продвижения. Полный комплекс работ — с нами вы не упустите ни одной мелочи. Чек-листы, подсказки, прозрачная отчетность и рекомендации профессионалов. Гарантии, оплата работ в рассрочку.

Давайте разбираться по порядку.

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

Смешанный контент (в оригинале — «mixed content») — это когда страница загружается по защищенному HTTPS соединению, но отдельные ресурсы (изображения, стили, скрипты и проч.) — по незащищенному HTTP.

Например, вы перешли на HTTPS (еще нет? вот инструкция). Но на одной из страниц вы по-прежнему загружаете изображение из внешней библиотеки, которая доступна по адресу вида site.ru. Это и есть смешанный контент.

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

  • опционально блокируемый (сюда относятся изображения, видео, аудио);
  • блокируемый (остальной контент — скрипты, стили, фреймы, flash и проч.).

Блокируемый контент является активным. Злоумышленники могут перехватить и изменить активный контент так, чтобы получить полный контроль над страницей или даже всем сайтом. Кража паролей и личных данных пользователей, cookies, перенаправление пользователей на другой сайт, изменение видимого содержимого — это лишь несколько примеров того, какие угрозы несет загрузка активного контента по HTTP.

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

Вот некоторые типы HTTP-запросов, которые считаются активным содержимым:

  • <script> (атрибут src);
  • <link> (атрибут href) (в том числе ссылки в CSS);
  • <iframe> (атрибут src);
  • запросы XMLHttpRequest;
  • запросы fetch();
  • использование ссылок в CSS (font-face, cursor, background-image);
  • <object> (атрибут data).

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

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

Вот типы HTTP-запросов, которые считаются пассивным содержимым:

  • <img> (атрибут src);
  • <audio> (атрибут src);
  • <video> (атрибут src).

Если вы не хотите, чтобы ресурсы на вашем сайте были заблокированы, проведите его аудит, найдите смешанный контент и сделайте так, чтобы он был доступен по HTTPS.

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

Есть разные способы узнать о том, что на вашем сайте есть смешанный контент.

По иконке в адресной строке браузера

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

Смешанный контент при загрузке с HTTPS: как найти и побороть

В браузере Chrome видим иконку, при клике по которой получаем пояснение:

Смешанный контент при загрузке с HTTPS: как найти и побороть

В Mozilla Firefox похожая история:

Смешанный контент при загрузке с HTTPS: как найти и побороть

Недостатки способа:

  • непонятно, какие именно ресурсы подгружаются по HTTP;
  • придется каждую страницу проверять вручную.

Поэтому это скорее индикатор, нежели полноценный способ поиска смешанного контента.

С помощью поиска по исходному коду страницы

Открываем исходный HTML код страницы в браузере (Ctrl + U) и ищем фрагмент «http:» (Ctrl + F).

Смешанный контент при загрузке с HTTPS: как найти и побороть

В этом случае мы точно знаем, какие ресурсы подгружаются по HTTP. Но если страниц на сайте много, этот способ не подходит.

Уведомления в консоли разработчика

Открываем в Chrome страницу, которую хотим проверить, и нажимаем Ctrl + Shift + I. На странице есть смешанный контент, о чем свидетельствуют ошибки «Mixed Content» с подробным описанием.

Смешанный контент при загрузке с HTTPS: как найти и побороть

Аналогично можем проверить наличие ошибок в Firefox:

Смешанный контент при загрузке с HTTPS: как найти и побороть

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

SSL-чекер от JitBit

JitBit — это быстрый способ определить страницы сайта, на которых есть смешанный контент. Указываем домен — получаем список «проблемных» URL.

Смешанный контент при загрузке с HTTPS: как найти и побороть

Недостаток в том, что непонятно, какой именно смешанный контент есть на страницах. Придется потом все проверять вручную. Кроме того, сервис не подходит для сайтов, у которых более 300-400 страниц.

Отчет по смешанному контенту в Lighthouse

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

Но по умолчанию в расширении Lighthouse нет отчета по смешанному контенту. Его необходимо запускать из командной строки. Как это сделать:

1. Установите браузер для разработчиков Google Canary.

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

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

4. Выполните команду:

npm install -g lighthouse

Начнется инсталляция Lighthouse.

Смешанный контент при загрузке с HTTPS: как найти и побороть

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

Смешанный контент при загрузке с HTTPS: как найти и побороть

5. Запустите отчет с помощью команды (вместо URL подставьте адрес страницы в формате site.ru):

lighthouse --preset="mixed-content" URL

Начнется формирование отчета.

Смешанный контент при загрузке с HTTPS: как найти и побороть

После завершения система сообщит, в какой папке хранится отчет.

Смешанный контент при загрузке с HTTPS: как найти и побороть

По умолчанию отчеты сохраняются в формате HTML.

Вы можете изменить формат вывода данных с помощью команды —output. Для получения справочной информации по этой и другим командам введите в консоли:

lighthouse --help

Смешанный контент при загрузке с HTTPS: как найти и побороть

В отчете два аудита:

  1. Использование HTTPS.
  2. Безопасная загрузка ресурсов.

Смешанный контент при загрузке с HTTPS: как найти и побороть

Если есть проблемы, будет указано, какие именно ресурсы подгружаются по HTTP.

Отчет Lighthouse Mixed-Content сразу для нескольких URL

Для проверки нескольких URL:

1. Создайте TXT файл и поместите в него список URL для проверки.

Смешанный контент при загрузке с HTTPS: как найти и побороть

2. Создайте файл BAT и поместите в него такой код (в кавычках укажите путь к своему TXT файлу и его название):

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

3. Запустите файл BAT из командной строки. Если файл хранится в той же папке, что и отчеты, достаточно просто прописать название файла и нажать Enter. В противном случае нужно написать start и через пробел указать адрес файла BAT.

Смешанный контент при загрузке с HTTPS: как найти и побороть

Сколько придется ждать — зависит от количества URL в текстовом файле. По каждому URL вы получите отдельный отчет.

За этот способ спасибо Christopher Giezendanner.

Отчет по смешанному контенту в Screaming Frog SEO Spider

Это, наверное, самый удобный способ. Но, в отличие от предыдущих, он платный. Стоимость программы Screaming Frog SEO Spider — £149 в год.

Для получения данных запустите отчет «Insecure Content» — и у вас будет список ресурсов с HTTP.

Смешанный контент при загрузке с HTTPS: как найти и побороть

О том, как спарсить с помощью Screaming Frog практически любые данные с любого сайта, читайте в блоге PromoPult.

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

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

Ссылки с HTTP могут вести на внутренние ресурсы и внешние.

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

С внешними ресурсами не все так просто.

Идеальный сценарий такой:

  • находите URL с HTTP;
  • проверяете, доступен ли этот же ресурс по HTTPS;
  • если да, меняете ссылку с HTTP на HTTPS;
  • проверяете — если все работает, забываете о проблеме.

Но бывает, что ресурсы недоступны по HTTPS. В таком случае есть три решения:

  1. Обратиться к владельцу ресурса и попросить его перейти на HTTPS (это из разряда фантастики).
  2. Найти безопасную альтернативу ресурсу на HTTP (все приличные ресурсы давно перешли на HTTPS).
  3. Ничего не делать (это крайний случай — если вы совсем никак не можете заменить ресурс, и он важен для ваших пользователей).

Чисто технически проще заменить единичный URL (например, в статье вы сослались на сайт без HTTPS). Достаточно открыть исходный код и внести правку.

Но есть URL, которые не исправить одним движением. Например, сюда относятся ссылки в стилях, скриптах, сквозные ссылки и т. п. В этом случае следует подключить программиста или использовать плагины.

Например, для WordPress есть такие плагины:

  • SSL Insecure Content Fixer. Позволяет автоматически исправить ссылки на незащищенные ресурсы. Удобно, что можно выбрать разную «глубину» исправлений и при необходимости игнорировать внешние сайты.

Смешанный контент при загрузке с HTTPS: как найти и побороть

  • Really Simple SSL. Это плагин для быстрого перехода на HTTPS. Он автоматически меняет ссылки на относительные и устраняет смешанный контент. В PRO-версии есть возможность сканировать сайт на наличие смешанного контента.

Смешанный контент при загрузке с HTTPS: как найти и побороть

  • Search & Replace. Плагин для поиска и замены любого контента на сайте, в том числе смешанного. Домены меняются на вкладке «Replace Domain URL».

Смешанный контент при загрузке с HTTPS: как найти и побороть

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

Смешанный контент при загрузке с HTTPS: как найти и побороть

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

И да пребудет с вами сила HTTPS.

  • При попытке сбросить windows 10 до заводских настроек возникает ошибка
  • При попытке распечатать ошибка печати е04
  • При попытке разархивировать выдает ошибку
  • При попытке проверить версию лаунчера произошла ошибка r launcher
  • При попытке присоединить вас к собранию произошла ошибка