Как перевести сайт на HTTPS протокол. Переход wordpress на https


Как перевести сайт на HTTPS протокол

Привет, дамы и господа! Сегодня поговорим, как перевести сайт на HTTPS протокол бесплатно, без потери трафика, пошаговая инструкция. Написано об этом уже много, но я люблю делиться своим опытом, ведь я тоже все свои блоги/сайты перевёл с HTTP на безопасный протокол HTTPS. И вам, рано или поздно придётся это сделать. Лучше конечно раньше. Инструкция будет для платформы Blogger (новичкам) и сайта/блога на WordPress расположенный на хостинге Бегет (бесплатный SSL - сертификат). Перейти на HTTPS протокол в Blogger не составить большого труда, надо лишь включить в настройках блога "Перенаправление HTTPS", а вот на платном хостинге это может занять какое то время:

сайт на httpsПереводим свой сайт или блог на протокол https

А чтобы вас побудить быстрее переходить с HTTP на HTTPS, то вот вам для стимула информация: Сайты без HTTPS Google Chrome помечает как небезопасные с 2017 года и тем самым Google усилил борьбу за продвижение HTTPS протокола. А ещё, что самое важное, Google будет учитывать использование сайтом протокола HTTPS в качестве одного из факторов ранжирования. Защищенные сайты-HTTPS окажутся на первых местах в выдаче (переход на HTTPs дает рост позиций в выдачи на 1-5%).

HTTPS-googleGoogle будет учитывать сайты на HTTPS

И так, переводим сайт на https. На заметку: Смена протокола сайта с HTTP на HTTPS считается переносом сайта с изменением URL. Это действие может временно повлиять на учет трафика. Если сделать всё правильно и вовремя, то этого можно избежать, а со временем, как у меня, посещаемость только увеличилась. Обратите внимание, вы можете сразу перевести свой веб-ресур на зашифрованный протокол (как сделал я) либо сначала подготовить сайт к переезду (некоторые так советуют).

NEW! Google рекомендует переводить сайт с HTTP на HTTPS целиком, чтобы ускорить процесс и избежать ошибок. Что касается колебаний позиций перемещаемого сайта в поисковой выдаче, если переезд с протокола HTTP на HTTPS выполнен технически правильно, то существенных потерь позиций сайта быть не должно.

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

Абсолютная ссылка - http://internet-inside.ru/o-sayte/

Относительная ссылка - //internet-inside.ru/o-sayte/

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

Как перевести блог Blogspot (Blogger) на HTTPS

Теперь все сайты/блоги на домене Blogspot (платформа Blogger) по умолчанию поддерживают безопасный протокол HTTPS. Исключение составляют лишь блоги с персональными доменами.

Если настройка "Перенаправление HTTPS" включена:Посетители блога будут всегда перенаправляться на адрес https://ваш блог.blogspot.com.

Если настройка выключена:При открытии адреса http://ваш блог.blogspot.com будет использоваться протокол HTTP (без шифрования). При открытии адреса https://ваш блог.blogspot.com будет использоваться протокол HTTPS (с шифрованием)

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

перенаправление HTTPSКак включить перенаправление HTTPS для блога Blogger

Если настройка "Перенаправление HTTPS" включена, посетители всегда будут перенаправляться на зашифрованную версию блога, расположенную по адресу https://vash-blog.blogspot.com. Вот результат в браузере хром, как на главной странице так и на внутренних страницах на нового блога с пару сообщениями:

HTTPS на блоге Blogger
Включен безопасный протокол HTTPS на блоге Blogger

На старых блогах результат наверняка будет иной - подключение к сайту защищено не полностью (смешанный контент). Вместо зелёного замка серый восклицательный знак:

смешанный контентЗначок смешанный контент

Ошибки, связанные со смешанным контентом, возникают, если основной HTML-контент веб-страницы загружается через защищенное соединение HTTPS, а дополнительные элементы (изображения, видео, скрипты) – через незащищенный протокол HTTP. Вам понадобится отредактировать ваш контент, о чём сказано будет ниже. А пока, переведём ваш сайт с HTTP на безопасный протокол HTTPS (платформа WordPress) расположенный на платном хостинге Beget.

Переход сайта WordPress на HTTPS. Хостинг Beget

Пользователи хостинга Бегет прямо из панели управления могут бесплатно заказать SSL-сертификат, предоставляемый некоммерческой организацией Let's Encrypt. Сертификат будет автоматически выпущен и установлен для вашего домена, а в последствии будет автоматически продлеваться. Выпуск, установка и дальнейшее продление сертификата - абсолютно бесплатны!

SSL-сертификатLet's Encrypt

Let's Encrypt - это некоммерческий центр сертификации (certificate authority, CA), который выпускает SSL-сертификаты бесплатно и создан для того, чтобы большая часть сайтов смогла перейти к работе по шифрованному протоколу (HTTPS). Сертификаты Let’s Encrypt распознаются как подтвержденные во всех основных браузерах.

Если ваши домены зарегистрированы на сервисе Бегет или находятся под их обслуживанием, то заказать бесплатный SSL-сертификат можно в разделе "Домены" (Регистрация и управление). Для того, чтобы ваш сайт заработал по проколу https надо напротив нужного домена нажать кнопку  (Управление SSL сертификатами)

Управление SSL сертификатами
Выберите напротив домена "Управление SSL сертификатами"

А у тех, у кого домены зарегистрированы и находятся на обслуживание у другого регистратора, например у 2domains, то вам надо перенести домен/ы на обслуживание к beget. В этом же разделе вам необходимо кликнуть по кнопке переноса напротив нужного домена , затем выполнить предоставленные инструкции. В том случае, если нужный вам домен отсутствует в данном разделе, вам необходимо предварительно его добавить во вкладке "Добавить или зарегистрировать домен":

Перенос доменаПеренос домена на обслуживание к Бегет

Для регистратора 2domains: Напишите в службу поддержки 2domains примерно вот так:

Прошу вас инициировать процесс переноса доменов (перечислите домены) на аккаунт с логином "beget" в рамках регистратора reg.ru

Дождитесь ответа, он вам придёт вам на почту:

Домен передан на указанный аккаунт. Необходимо подтвердить перенос домена на принимающем аккаунте. После завершения переноса вам потребуется синхронизировать данные с регистратором. Это необходимо, чтобы домен более не отображался в Вашем аккаунте на 2domains и не вводил вас в заблуждение, так как управлять доменом вы не сможете в нашей системе.

Всё, после этого ваши домены перейдут на обслуживание к хостингу Бегет и вы можете управлять имеющимися на аккаунте доменами. И так, после того, как вы нажали на кнопку "Управление SSL сертификатами" в открывшемся окне перейдите на вкладку "Бесплатный сертификат" и нажмите кнопку "Установить":

SSL-сертификатКак заказать бесплатный SSL-сертификат?

После отправки заказа SSL-сертификата на контактный email вы получите письмо о подаче заявки на выпуск SSL, а затем еще одно письмо о завершении его установки.

В момент установки для домена будет автоматически изменена A-запись, если домен работает на DNS Бегет. Если вы используете не БЕГЕТ DNS, то необходимо самостоятельно прописать на них указанный в письме IP-адрес в качестве А-записи для домена.

DNS записи обычно обновляются в течение 10-15 минут, после их обновления проверьте корректную работу сайта через https. Вот такие значки появятся рядом с доменами, когда сертификат SSL установлен:

сертификат безопасностиУстановленный сертификат безопасности

При необходимости настройте редирект с http на https на постоянной основе. Делается редирект 301 так, откройте файл .htaccess и добавьте такой код:

RewriteEngine On RewriteCond %{HTTP_HOST} ^(www\.)?internet-inside\.ru$ [NC] RewriteCond %{HTTP:X-Forwarded-Proto} !=https RewriteRule ^(.*)$ https://internet-inside.ru/$1 [R=301,L]

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(www\.)?internet-inside\.ru$ [NC]

RewriteCond %{HTTP:X-Forwarded-Proto} !=https

RewriteRule ^(.*)$ https://internet-inside.ru/$1 [R=301,L]

редирект с http на https Настройка редирект с http на https на постоянной основе

Естественно, замените мой домен сайта на ваш.

Далее, открываем ваш файл robots.txt и для новой версии сайта нужно указать директиву Host с https, как главное зеркало (исправить http на https):

robots.txtНастройка директивы Host в файле robots.txt

Яша будет знать, что зеркало с протоколом HTTPS, самое главное.

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

Дальнейшие действия касаются и платформы Blogger. Следующий обязательный шаг: чтобы не потерять трафик на сайт, надо сообщить всем поисковикам о новом сайте. В Яндекс, Google и другие поисковики необходимо добавить и подтвердить новый сайт (через кабинет вебмастера), указав версию с https. У вас теперь в списке ваших сайтов будет и та и другая версия:

Яндекс: у вас теперь в списке ваших сайтов будет и та и другая версии.

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

В Google сайтВ Google сайт с https и с http

Ещё для Яндекс нужно у HTTP-сайта указать главное зеркало с HTTPS. В панели для вебмастеров Индексирование - Переезд сайта - Добавить HTTPS:

Настройка HTTPSЯндекс: Переезд сайта на HTTPS

В Google это делать не надо, достаточно 301 редирект. Не забудьте для нового сайта HTTPS отправить файлы Sitemap.xml во все поисковики, установить региональность и так далее. На этом с поисковиками закончим и перейдём к

Правка ссылок на абсолютные или относительные

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

Для блога на Blogger есть подробная справка, что делать после включения протокола HTTPS - https://support.google.com/blogger/answer/6286127, а для сайта WordPress нужно естественно, по очереди открывать для редактирования сообщения и исправлять все внутренние ссылки. Для подготовки ресурса правим ссылочки на относительные. Просто удаляем всё до двойного слеша //:

Относительная ссылкаОтносительная ссылка

Если уже перевели сайтик на безопасный протокол, то можно ставить абсолютную ссылку с HTTPS, просто к HTTP добавляем S:

Абсолютная ссылкаАбсолютная ссылка

Не забудьте проверять и вставленные изображения, также меняйте ссылку. После всех исправлений URL в сообщениях и страницах, поправьте ссылки в меню и так далее. Когда статей много это - адский труд, я правил на 5 сайтах и самое трудное пришлось на сайт с рецептами - их 1781, плюс по мелочам. А ещё, на главной, после всех работ, ну ни как очень долго не появлялся долгожданный зелёный замочек (серый восклицательный знак прилип как банный лист). Еле, еле нашёл проблему (одна картинка всю кашу портила), исправил и теперь всё окей.

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

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

Вам теперь останется ждать когда Google и Яндекс поменяют адрес вашего сайта в поиске:

сайт в поискеЯндекс оставили лишь один сайт в поиске

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

Понравилась статья? Поделись с друзьями!

wordpressmania.ru

Как перейти с http на https? Пошаговая инструкция. Переход на Https в Joomla и Wordpress

Пост был обновлен: Июн 04, 2018

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

Что меня побудило перейти на протокол https? В последнее время мне на глаза стали попадаться вот такие заголовки: Браузер Mozilla Firefox в скором времени перестанет поддерживать небезопасные http-соединения; Правительство США поручило всем государственным сайтам перейти на HTTPS; C января 2017 года все сайты, передающие секретные данные (пароли, номера кредитных карт и т.д.) по незащищенному соединению в браузере Google Chrome будут помечаться как небезопасные. Плюс ко всему где-то в интернете читал, что скоро всем сайтам придется перейти на протокол https в обязательном порядке. Я подумал, что в один прекрасный день все равно эта участь постигнет и меня. Так зачем же тянуть? Тем более хостинг beget.ru, на котором я сижу предоставил возможность для приобретения бесплатных SSL-сертификатов. В общем, собрал всю необходимую информацию по тому, как перейти с HTTP на HTTPS и сделал это.  🙂

Структура статьи

Зачем нужно использовать https и что имеется ввиду под безопасностью?

Если говорить кратко, то протокол https позволяет отправлять запросы на сервер с нашего сайта в зашифрованном виде, гарантируя при этом, что эти самые данные не будут перехвачены хакерами. Элементарный пример передаваемых данных — это авторизация на сайте (или регистрация). В процессе авторизации мы отправляем запрос на сервер, который содержит логин и пароль. Так вот, если отправлять эти данные по небезопасному соединению, то они легко могут быть перехвачены, что в результате может привести к взлому сайта. Работу протокола https обеспечивают SSL сертификаты. Они бывают разных видов, про виды сертификатов читайте ниже.

Весь процесс я решил разделить на шаги и выполнять их как раз именно в такой последовательности. Также ниже я дам рекомендации по переходу для популярных cms Joomla и WordPress. У каждого есть свои особенности.

Приобретение сертификата

Для начала необходимо приобрести SSL сертификат, чтобы ваш сайт был доступен по обоим протоколам — http и https.  Давайте сначала внесем некоторые ясности в виды SSL сертификатов.

Виды сертификатов

Простые сертификаты

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

Wildcard SSL

Wildcard SSL — прекрасно подойдет сайтам с наличием поддоменов. В данном случае достаточно выпустить один сертификат, который будет работать на всех поддоменах и позволит сэкономить деньги на покупку отдельных сертификатов.

Мультидоменные SSL сертификаты

Мультидоменный SSL сертификат — сертификат, который может поддерживать сразу несколько доменов. Также, как и Wildcard позволит сэкономить денежку. Так что имейте ввиду, если у вашей компании или проекта имеется несколько доменных имен, то выбирайте именно мультидоменный сертификат.

EV (Extended Validation) сертификаты

EV (Extended Validation) — расширенная проверка компании. Данный вид сертификата могут позволить себе купить только крупные компании. Для его получения необходимо предоставить всю подробную информацию о компании — название организации, реквизиты, наличие о государственной регистрации, реальные звонки для утверждения полученных данных и многое другое. Да, получение такого вида сертификата дело хлопотное, но поверьте оно того стоит. Более того, рядом с адресной строкой в браузере будет отображаться название компании. Вот как это выглядит на примере сайта Сбербанка.

Отображение SSL сертификата в Сбербанк

Смотрится круто и повышает доверие потенциального клиента. Поэтому, владельцам крупных компаний рекомендуется выпуск именно EV сертификатов.

Сертификаты с поддержкой IDN

Не все сертификаты поддерживают кириллические домены. Если у вас домен кириллицей в зоне РФ, то вам следует приобрести сертификат с поддержкой IDN.

Подробнее про виды сертификатов и их стоимости вы можете почитать в интернете. Здесь же я привел лишь некоторые, чтобы вы имели понятие, что сертификаты SSL бывают разные.

Получение сертификата

Сегодня приобрести сертификат SSL для сайта можно абсолютно бесплатно. Уже давно Google заявил о том, что пора уже переходить всем на безопасный прокол https и что предпочтение в ранжировании будет отдаваться сайтам именно с защищенным соединением. Кстати, это еще одна причина по которой я перешел на https. В общем, в связи с этим всем в свет появился проект под названием Let’s Encrypt. В первую очередь данный проект рассчитан на доступность приобретения SSL сертификата, а также облегчить жизнь рядовым веб-разработчикам с установкой сертификатов (генерация приватных ключей и прочее). И что самое главное — сертификаты, выдаваемые Let’s Encrypt, абсолютно бесплатные. Лично на моем блоге стоит именно такой сертификат.

Я получил сертификат SSL от Let’s Encrypt в панели управления beget.ru. Если вы пользуетесь данным хостингом, то получить его будет проще простого. Заходите в панель управления Бегет, далее переходите в раздел «Домены» и в списке доменов щелкаете по иконке SSL.

Получение SSL сертификата в Бегет

Иконка рядом с доменом говорит о том, что сертификат уже установлен. Попав в раздел SSL, открываем вкладку «Бесплатный SSL сертификат«. Если у вас имеются поддомены на выбранном домене, то лучше сразу выберите и их тоже, т.к. если этого не сделать сразу, то в дальнейшем придется перевыпускать сертификат.

Выбор бесплатного сертификата в Бегет

Настройка сайта

Загружаемые ресурсы

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

Относительный адрес:

/image.jpg

Относительный адрес вне зависимости от протокола:

//sitename.ru/image.jpg

Абсолютный адрес:

http://sitename.ru/image.jpg

В абсолютном адресе указывается доменное имя сайта с протоколом. Так вот, при переходе на https необходимо применять относительные адреса вне зависимости от протокола, т.е. отсекая сам протокол. При таком подходе ресурсы будут загружаться по такому же протоколу, что и ваш и не важно на http он или на https. Единственное условие — если вы загружаете ресурсы с внешних сайтов (например, с CDN), то данные сайты должны быть доступны по https, иначе от них придется отказаться.

Например, загрузка библиотеки jQuery с CDN с поддержкой https будет следующей:

<script src="//code.jquery.com/jquery-1.12.4.min.js"></script>

Также, как вариант вы можете просто указать все абсолютные ссылки с протоколом https (так например сделано в WordPress).

Тег <base />

Обратите внимание, если вы на сайте используете тег <base> с адресом сайта, то обязательно проследите, чтобы адрес был указан с протоколом https. Например, <base href=»https://zaurmag.ru» />. Данный тег не является обязательным, но все же, если в вашей cms он используется, то потрудитесь его исправить в случае чего. Находится он в самом начале секции <head>. Если получится так, что вы все ссылки изменили на относительные вне зависимости от протокола (//sitename.ru), а в теге <base> содержится адрес с http, то все ваши относительные ссылки будут считаться относительными в зависимости от протокола http. В результате в консоле браузера вы получите кучу ошибок, а на сайте поплывет дизайн.

Тег rel=»canonical»

Если у вас на сайте используется тег rel=»canonical», то проследите за тем, чтобы канонический адрес страницы в данном теге был абсолютным с указанием протокола https. Иначе, если будет http он будет работать только во вред.

301 редирект с http на https

Чтобы не потерять трафик нам необходимо сделать так, что когда пользователь заходит на сайт по протоколу http его бы автоматически перекидывало на https. Склейка зеркал и переиндексация сайта в поисковиках дело долгое (Гугл правда быстро реагирует, вот с Яндексом придется ждать), поэтому 301 редирект может это дело ускорить и не дать потерять трафик. Для этого в файл .htaccess нужно добавить всего две строчки:

RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^(.*)$ https://sitename.ru/$1 [R=301,L]

Этих двух строк должно хватить. Если же у вас будут проблемы с редиректом, то можете попробовать альтернативный код.

RewriteEngine On # Если этой строки нет выше RewriteCond %{HTTP:X-Forwarded-Protocol} !=https RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

А вот еще один код редиректа. Бывало такое у меня, что выше два кода не работали. Помог только этот.

RewriteEngine On RewriteCond %{HTTPS} off RewriteCond %{HTTP:X-Forwarded-Proto} !https RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

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

Еще советую добавить код, который будет перекидывать по 301 редиректу на www или на без www, в зависимости от того, какой домен вы выбрали основным.

## редирект с без www на www: RewriteCond %{HTTP_HOST} ^sitename.ru$ [NC] RewriteRule ^(.*)$ https://www.sitename/$1 [R=301,L] ## редирект c www на без www: RewriteCond %{HTTP_HOST} ^www.sitename.ru$ [NC] RewriteRule ^(.*)$ https://sitename.ru/$1 [R=301,L]

Файл robots.txt

В robots.txt нам обязательно следует указать главное зеркало с протоколом https. Также указать ссылку на карту сайта так с протоколом https. Вот как я сделал на своем блоге:

Host: https://zaurmag.ru Sitemap: https://zaurmag.ru/sitemap.xml

Переезд сайта в панели вебмастеров Яндекс и Гугл

После вышеперечисленных действий нам необходимо сообщить поисковикам, что сайт переехал на новый протокол https. Как известно адрес с http и с https это абсолютно два разных адреса в глазах поисковиков.

Яндекс вебмастер

Для переезда сайта в Яндекс заходим в панель Яндекс Вебмастер по адресу https://webmaster.yandex.ru. Выбираем свой сайт и в разделе «Настройка индексирования» вводим свой домен и отмечаем чек-бокс «Добавить HTTPS«, сохраняем.

Переезд сайта в яндекс вебмастер

Далее переходим в раздел «Настройка индексирования» -> «Файлы Sitemap» и добавляем адрес карты сайта с протоколом https. Данный адрес, если помните мы указывали и в файле robots.txt.

Добавляем адрес sitemap в панели Яндекс вебмастер

Центр вебмастеров Гугл

С Яндексом разобрались, теперь давайте перейдем к Google. Идем в центр вебмастеров Гугл — https://www.google.com/webmasters и добавляем все версии (зеркала) сайта. Всего их должно быть 4. Например, для моего блога я добавил:

http://zaurmag.ru https://zaurmag.ru http://www.zaurmag.ru https://www.zaurmag.ru

Версии одного сайта в вебмастере гугл

Далее выбираем основное зеркало с https естественно, только с www или без www. Для своего сайта я выбрал без www — https://zaurmag.ru. Открываем сайт и в настройках сайта (кликаем по шестеренке справа) указываем основной домен. Вот на примере моего блога.

Основное зеркало сайта zaurmag.ru в вебмастере гугл

Далее указываем адрес карты сайта. Для этого идем в «Сканирование» -> «Файлы Sitemap» и добавляем адрес карты сайта, щелкнув по красной кнопочке справа. Кстати, пока писал статью обнаружил, что я не добавил карту сайта для основного домена сайта zaurmag.ru.  🙂

Карта сайт в Гугл вебмастер

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

Зеленый замочек https

Также хотелось бы сказать, что процесс переиндексации в Гугл занимает не так много времени, примерно 2 недели хватит, а может и меньше. Вот в Яндекс по сложнее с этим, я и не удивлен. Яндекс всегда был тугой в этом плане. В первое время у вас обнулится ТИЦ, если он у вас был и в первый же апдейт ТИЦа должен будет вернуться. Это я написал, чтобы вы не пугались. Ну а далее в Яндекс Вебмастер вы обнаружите следующую картину…

Сайт zaurmag.ru в вебмастере Яндекс

Прошло довольно приличное время после перехода на https и как видите по скрину еще не все страницы перешли на https. Что сказать, так устроен отечественный поисковик.

Парус слов про Яндекс Метрику. Если у вас был установлен код яндекс метирки, то в панели метирики вам придется добавить сайт заново с протоколом https.

Переход на HTTPS в Joomla

Обновлено — 15.12.2016

В последних версиях Joomla с переходом на https не должно возникнуть проблем. В файл .htaccess не обязательно добавлять директивы редиректов, движок сам перекинет с http на https. Для этого необходимо просто включить опцию в общих настройках Joomla — «Сервер» -> «Включить SSL» -> «Весь сайт».

Важно! Включайте данную опцию именно тогда, когда вы уверены, что сертификат у вас уже установлен и сайт доступен по протоколу Https.

Переключение на https в глобальных настройках Joomla

Ошибка при переходе на Https в Joomla

Один раз у меня было такое, что мне пришлось немного потрудиться, на одном из клиентских сайтов переход на https прошел не так гладко. Браузер ругался на относительные адреса загружаемых ресурсов, хотя адреса были указаны относительными вне зависимости от протокола. Проблема была в теге <base />. Давайте расскажу по порядку.

Помимо тех настроек сайта, что были указаны выше нам необходимо открыть файл configuration.php и в поле live_site вписать абсолютный адрес с проколом https.

public $live_site = 'https://sitename.ru';

По идее после этой настройки в теге <base /> адрес сайта должен быть указан с протоколом https. Но нет, он был указан с протоколом http, от того и пошли все ошибки. Поискал решение проблемы в интернете, конкретно на форуме joomlaforum.ru и нашел решение. Необходимо было сделать некоторый хак ядра, правда уверяли, что после обновления данные изменения не затрутся. Открываем файл —  /libraries/joomla/document/renderer/html/head.php и заменяем (77 строка)

$buffer .= $tab . '<base href="' . $base . '" />' . $lnEnd;

на

$buffer .= $tab . '<base href="' . Juri::base() . '" />' . $lnEnd;

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

Пока я эту проблему так и не решил. Не понимаю почему так происходит — версия движка последняя.

После этих действий все пришло в норму. Также в общих настройках Joomla, включил SSL. Ее включение привело к неработоспособности сайта.  Если вдруг вы выбрали опцию «Весь сайт» и сайт перестал работать, то вам необходимо открыть файл configuration.php по Ftp,  найти $force_ssl и установить значение на 0.

public $force_ssl = '0';

После этого сайт заработает.

Переход на HTTPS в WordPress

В принципе для перехода на https в WordPress никаких дополнительных действий, помимо вышеперечисленных делать не нужно. Единственное нужно поменять адрес сайта на https в общих настройках WordPress. Но эту настройку необходимо сделать только после приобретения SSL сертификата, когда ваш домен будет доступен по протоколу https, иначе в админку вы не сможете попасть.

Настройка адреса в настройках WordPress

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

На этом и завершу. Всем спасибо за внимание. Не стесняемся, задаем вопросы в комментариях.

Пост был обновлен: Июн 04, 2018

Заур Магомедов
Заур Магомедов

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

У меня вы можете:

Оцените пост:

Загрузка...

Проверка орфографии

Система Orphus

zaurmag.ru

Переезд сайта WordPress на HTTPS

Перевод сайта на httpsДо 2017 года особо не задумывался о переводе сайтов на протокол HTTPS, но в начале года собрался создавать новый информационный проект строительной тематики и решил, как обычно, собрать информацию о лидерах нищи. Выделил для себя шесть топовых сайтов и обнаружил, что три из них работают по протоколу HTTPS - это была веская причина чтобы призадуматься...

Переезжать или нет?

Свой первый сайт я создал в 2005 году на бесплатном хостинге narod.ru. За прошедшее время была возможность наблюдать за теми изменениями которые происходят в поисковой выдаче. Уже в 2005 году,  для лучшего ранжирования, поисковики рекомендовали наполнять информационные сайты качественным контентом. Однако веб-мастера только посмеивались над этими рекомендациями и клепали откровенные ГС которые весьма неплохо чувствовали себя в выдаче. Часть этих сайтов была заполнена бредо-текстами сгенерированными автоматически. Но время шло и предсказания Яндекса и Google начали претворяться в жизнь - благодаря поведенческим и другим факторам, в ТОП-е выдаче обосновались сайты с текстами интересными для людей.

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

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

Необходимо обратить внимания на тот факт, что Google не делает исключения для информационных сайтов. Дело в том, что "настоящая безопасность" касается не только платежей, но и конфиденциальности о действиях пользователей в Сети.

Что касается Яндекса, то в ближайшее время он никаким образом не планирует дискредитировать сайты работающие по протоколу HTTP (см. статью "Деликатный переезд на https или о чем еще стоит знать" от 20 марта 2017 года).

Нужно ли переходить на HTTPS? Поможет ли это улучшить позиции?

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

Планируете ли вы помечать все сайты по протоколу HTTP как небезопасные?

Таких планов в настоящий момент нет.

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

Негативные факторы

В статье под авторством Платона Щукина  "Деликатный переезд (или рекомендации Яндекса по переезду на HTTPS)" от 23 октября 2015 года, сказано:

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

В статье ничего не сказано о тИЦ (тематический индекс цитирования). Около месяца назад, я менял главное зеркало у "народного" сайта размещенного на uCoz. После склейки зеркал, основным стал домен второго уровня (протокол https), при этом тИЦ 140 обнулился. Вчера тИЦ вернулся с приростом 10 пунктов. О восстановлении тИЦ в течение месяца говорят и другие веб-мастера.

Теперь обратимся к справке Google:

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

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

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

Исходим из того, что сайт уже ранее добавлен в Яндекс.Вебмастер по протоколу http.

Установка бесплатного сертификата SSL

Первоначально установим только сертификат SSL и посмотрим, что после этого произойдет. Поскольку мой блог размещен на хостинге Beget, то задача значительно упрощается. Заходим в раздел Домены и щелкаем по иконке Управление SSL сертификатами.

Щелкаем по иконке Управление SSL сертификатамиЩелкаем по иконке Управление SSL сертификатами

На данный момент, уже многие хостеры предлагают своим клиентам бесплатные сертификаты, Beget не исключение. На вкладке Бесплатный SSL сертификат необходимо указать поддомены (если они есть) и щелкнуть Установить.

Поскольку у домена mukhutdinov.com нет поддоменов, то просто щелкаю по кнопке "Установить"Поскольку у домена mukhutdinov.com нет поддоменов, то просто щелкаю по кнопке "Установить"

Ровно через 20 минут на e-mail пришло сообщение о том, что сертификат был установлен на домен mukhutdinov.com, т.е. на выпуск и установку сертификат потребовалось всего 20 минут.

Напротив домена появился зелёный значок указывающий на то, что SSL-сертификат установленНапротив домена появился зелёный значок указывающий на то, что SSL-сертификат установлен

Если вы заказываете SSL-сертификат на только что купленный домен, то на выпуск и установку сертификата может уйти несколько суток.

Посмотрим, что изменилось после установки сертификата.

Ссылки внутренней перелинковки из контента записей проставлялись "вручную", т.е. они остались с протоколом http.

При помощи сервиса www.ssllabs.com можно проверить качество установленного SSL-сертификата.

У SSL-сертификата рейтинг класса "А", выше только "А+"У SSL-сертификата рейтинг класса "А", выше только "А+" (кликабельно)

В полном отчете есть информация и о сроке действия сертификата (valid until).

Теперь необходимо перевести на защищенный протокол внутреннею перелинковку.

Изменение внутренних ссылок

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

В различных интернет-источниках предлагают разные варианты внутренней перелинковки:

  1. //mukhutdinov.com/kak-dobavit-sajt-v-yandex-webmaster.html (относительная ссылка)
  2. /kak-dobavit-sajt-v-yandex-webmaster.html (относительная ссылка)
  3. httрs://mukhutdinov.com/kak-dobavit-sajt-v-yandex-webmaster.html (абсолютная ссылка)

В качестве эксперимента я опробовал первые два варианта, но оба они привели к тому, что после внесения изменений в базу данных я не смог зайти в консоль WordPress. Яндекс.Браузер не выдавал никаких сообщений, а Google Chrome и Opera жаловались на "куки".

WordPress: ОШИБКА: Cookies либо заблокированы, либо не поддерживаются вашим браузером. Источник: http://jkeks.ru/jkeks.ru/archives/8175Сообщение об ошибке при попытке войти в админку WordPress

Честно говоря я так и не сообразил в чем причина проблемы и решил воспользоваться третьим вариантом, т.е. внутренние ссылки оставить абсолютными указав протокол https.

Берём из бекапа базу данных (файл с расширением .sql), создаем копию и открываем её при помощи текстового редактора NotePad ++. При помощи поиска находим внутренние ссылки и вносим необходимые изменения.

Находим внутренние ссылки с протоколом http и меняем их на ссылки с протоколом https. В конкретном случае было изменено 13 303 ссылки

Сохраняем изменения и архивируем файл (zip-архив) для более быстрой загрузки. Теперь нам потребуется phpMyAdmin - в разделе Управление базами данных MySQL щелкаем по соответствующему значку.

Переходим в phpMyAdminПереходим в phpMyAdmin

При помощи phpMyAdmin импортируем подготовленный нами файл в базу данных сайта.

Указываем местоположение файла базы данных на локальном компьютере и нажимаем кнопку "Вперед"

Если импорт прошел успешно, то должно появиться сообщение на зелёном фоне.

Данные успешно импортированы

В консоли WordPress открываем Настройки - Общие и убеждаемся, что сайт настроен на защищенный протокол.

WordPress настроен на защищенный протоколWordPress настроен на защищенный протокол

Переезд сайта в Яндексе и Google

Яндексу можно подать следующие сигналы о переезде сайта на https:

  1. Прописать директиву Host;
  2. Сообщить о переезде в Яндекс.Вебмастере указав основное зеркало с https;
  3. Настроить 301-редирект.

Что касается Google, то для него подойдет только третий  вариант (301-редирект).

Директива Host актуальна только для Яндекса, Google её игнорирует.

Наша задача заключается в том, чтобы переезд прошел менее безболезненно, т.е. не хочется, чтобы излишне просела посещаемость. Мнений по этому поводу как минимум два. Сергей Кокшаров (devaka.ru) считает, что нужно сразу настраивать 301-редирект. В статье Как перенести сайт на HTTPs. Пошаговая инструкция от 22/06/2015 он пишет:

Раньше (еще в начале года) требовалось ждать, пока Яндекс переклеит зеркала, и уже потом перенаправлять пользователей. Это могло плохо повлиять на трафик из Google. Сейчас не обязательно ждать работу зеркальщика Яндекса, а можно сразу настраивать 301 редирект с HTTP версии на HTTPS.

Для меня в приоритете информация от Яндекса и Google, поэтому первоначально узнаем мнение Платона Щукина.

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

Поскольку статья датирована 23 октября 2015 года, решил посмотреть свежие комментарии.

Вопрос от biperch 29 января 2017:

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

Ответ Платона 03 февраля 2017:

Лучше ставить после склейки.

Интересно было узнать и точку зрения Google. На официальном форуме нашел следующую информацию:

Вопрос Федора Соколовского от 02 января 2017 года:

Суть в том, что рекомендации по переходу на защищенный протокол у Гугла и Яндекса несколько отличаются. Яндекс советует ставить 301 редирект только после переклейки зеркал, для Гугла, если не ошибаюсь, редирект рекомендуется ставить сразу.Вопрос: Как выйти из ситуации? У меня основной траффик с Яндекс, поэтому больше ориентируюсь на него, но и с Гуглом хочется остаться друзьями, так сказать. На данный момент жду, пока яндекс сделает основным зеркалом версию с https, но как быть с Гуглом? Яша довольно тормозной, он неделями клеить может. Что, если Гугл подхватит в это время https версию и из-за отсутствия редиректов посчитает ее копией, наложит фильтр какой-нибудь.

Ответ эксперта Google от 02 января 2017 года:

Привет, Фёдор!Мне кажется Вы выбрали правильную стратегию. Сейчас Вам достаточно добавить все четыре версии сайта в GSC и выбрать предпочтительную. После того как в Яндекс.Вебмастер произойдёт смена зеркала - расставить 301.Если все четыре версии сайта будут идентичны друг другу (обычно это так и есть), то переезд в Google пройдёт штатно.

Итак, если следовать рекомендациям Яндекса и Google, то сперва следует дождаться склейки зеркал в Яндексе, а затем настроить 301-редиректы.

Переезд в Яндексе

В файле robots.txt меняем директиву Host и указываем новый адрес Sitemap:

Host: https://mukhutdinov.com Sitemap: https://mukhutdinov.com/sitemap_index.xml

У меня на блоге xml-карта генерируется плагином Yoast SEO, по этой причине концовка URL заканчивается sitemap_index.xml, а не sitemap.xml. Замечу, что даже если я укажу адрес https://mukhutdinov.com/sitemap.xml, то робот все равно доберется до карты сайта так как сработает редирект.

Добавляем зеркало с https в Яндекс.Вебмастер. При добавлении обязательно указываем протокол https

Заходим в раздел Индексирование - Файлы Sitemap и добавляем ссылку на xml-карту сайта.

Добавление в Яндекс.Вебмастер sitemap.xml по протокулу httpsНе забываем указать протокол https

Теперь необходимо изменить настройки зеркала с http (пока она является главным). Выбираем в списке сайт с протоколом http (протокол http по умолчанию не отображается), далее Индексирование - Переезд сайта.

Ставим галочку Добавить HTTPS и жмем СохранитьСтавим галочку "Добавить HTTPS" и жмем "Сохранить"

Появится сообщение о том, что заявка обрабатывается.

Заявка на переезд https обрабатываетсяЗаявка на переезд обрабатывается

В конкретном случае, на обработку заявки ушло двое суток.

В ближайшее время в результатах поиска вместо домена mukhutdinov.com появится https://mukhutdinov.comЗаявка на переезд принята 19 февраля 2017 - через двое суток после подачи

Ранее добавлял энное количество зеркал в зоне .RU - заявки принимались в течение нескольких секунд. В данном случае, ожидание затянулось - либо технический сбой, либо причина в зоне .COM.

Через три дня после принятия заявки на переезд сайта (22 февраля 2017), в Яндекс.Вебмастере около домена с https все ещё была надпись "Данные скоро появятся", т.е. можно было предположить, что процесс еще не начался.  Посмотреть выдачу Яндекса и обнаружил, что по основным (наиболее частотным) запросам появились страницы с https. Обратил внимание на то, что в браузерах Google Crome и Opera, URL главной страницы отображается с жирной зелёной точкой перед дотком.

В выдаче Яндекса сайт уже с протоколом https, а в доменном имени отображается жирная зелёная точка

Решил приступить к переезду в Google не дожидаясь сообщения Яндекс.Вебмастер об изменении главного зеркала.

Переезд в Google

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

Открываем файл .htaccess и дописываем следующие строки:

RewriteEngine On RewriteCond %{HTTP:X-Forwarded-Proto} !=https RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

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

Для переиндексации сайта, Google вполне достаточно 301-редиректа, однако можно выполнять и дополнительные рекомендации:

Добавьте в Search Console адрес сайта, использующего протокол HTTPS. Помните о том, что Search Console расценивает страницы HTTP и HTTPS как разные, поэтому их данные не совпадают. Если на вашем сайте используются оба протокола, то в Search Console следует добавить два ресурса.

Согласно справки Google, в Search Console необходимо добавлять все версии сайта:

Добавляем версии сайта в Search Console с указанием протокола.

Добавляем сайт в Search ConsoleДобавляем сайт в Search Console

После того как все варианты сайта добавлены, необходимо указать основной домен:

  1. На главной странице Search Console выберите сайт.
  2. Нажмите на значок шестеренки  и выберите Настройки сайта.
  3. Укажите нужный вариант в разделе Основной домен.

Результаты

Google отработал без сюрпризов - постепенно удалял из индекса страницы с протоколом http, а вместо них добавлял страницы с https. Ориентировочно, Google справился с поставленной задачей за две недели. Чтобы визуально представить картину, можно воспользоваться графиком количества кликов из Google-вебмастер.

Количество кликов на сайте работающем по протоколу http практически упало до нуляКоличество кликов на сайте работающем по протоколу http практически упало до нуляУвеличение кликов на сайте работающем по протоколу https

Что касается Яндекса, то не обошлось без причуд. 26 февраля 2017 года с удивлением обнаружил, что после того, как был настроен 301-редирект, Яндекс надумал вернуть в поиск документы с протоколом http.

Яндекс "выкинул" из поиска часть документов с протоколом https, при этом добавив в поиск документы с протоколом httpЯндекс "выкинул" из поиска часть документов с протоколом https, при этом добавив в поиск документы с протоколом http - переиндексация в обратном порядке

Заглянул в поиск и убедился в том, что те документы, которые четыре дня назад были уже доступны по протоколу https, выдаются снова по протоколу http. Как бы то ни было, 21 марта 2017 года, склейка зеркал отобразилась в Яндекс.Вебмастер.

 

Главный зеркалом признан домен https://mukhutdinov.com

В конкретном случае, на переезд в Яндексе ушло около месяца. Замечу, что с другим моим сайтом Яндекс отработал в два раза быстрее.

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

Во время переезда блога на протокол https новых материалов практически не добавлялось. Посещаемость не просела

Выводы

Несколько выводов, которые я сделал для себя:

mukhutdinov.com

Переход на HTTPS в WordPress.

Переход вашего сайта на защищенное соединение по технологии SSL/TLC без предварительной подготовке скорей всего вызовет проблему смешенного контента. Лично так у меня и получилось.

По сути, смешанное содержимое или смешанный контент(mixed content) – это смешанные скрипты протоколов https и http. Дело в том, что если не все наполнение сайта состоит из файлов, загружаемых по протоколу https, и на странице имеется часть контента, загружаемого по протоколу http, то такое соединение может быть защищено только частично. В результате, казалось бы безопасное соединение является не совсем безопасным. Что бы это исправить нам надо исправить все ссылки на https или на так называемы абсолютные ссылки. Давай те этим и займемся в популярном CMS WordPress.

Первым делам мы измени ссылки в Настройки- Общие настройки.

Затем нам надо поменять ссылки на картинки, статьи и другой контент в базе данных. Для этого я воспользовался плагином HTTP / HTTPS Remover.

Так же рекомендуют еще Easy HTTPS (SSL) Redirection. И даже их использование вместе, хотя сами разработчики такой вариант не рекомендуют. ВАЖНО, сделайте бэкап сайта перед установкой и использованием плагинов и заменой ссылок, на всякий случай.

Если останутся проблемы то ставим пару плагинов для замены ссылок в ручном режиме : Velvet Blues Update URLs, Better Search Replace.

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

Так же у меня были проблемы с картинками для которых установлен  параметр Ссылка нет(не привязанные к записям)  в старых записях, ссылка на картинку не как не хотела меняться автоматически.Мне пришлось править статьи руками. В особо тяжелых случаях придется править базы данных SQL в ручном режиме. Но мне это не понадобилось. Надеюсь вам тоже.

Возможно эти статьи будут вам интересны.

xn--90aeniddllys.xn--p1ai


Смотрите также

Prostoy-Site | Все права защищены © 2018 | Карта сайта