
Как я перевел свой сайт с http на https протокол
Https-протокол — не мода, а норма современного безопасного сайта.
Началось всё с того, что Google объявил о своём намерении помечать в Google Chrome незащищенные сайты, работающие по протоколу http. Данную затею Google поддержали монстры российского интернет пространства Yandex, Mozilla и др.
Не буду вдаваться в теорию и описывать все преимущества https-протокола, скажу лишь то, что использование HTTPS-соединения, обеспечивает конфиденциальность данных пользователей вашего сайта.
Технологии развиваются, прогресс неумолимо идет вперед. Как не печально, но если вы не развиваете свой сайт, значит он умирает…
Пошаговая инструкция перевода WordPress-сайта с http на https
Перед началом перевода своего сайта с http на https протокол обязательно зайдите на хостинг и сделайте backup файлов и базы данных. Имея архив Вы всегда сможете вернуть свой сайт в исходное состояние.
Шаг 1. Устанавливаем бесплатный ssl-сертификат
На хостинге Бегет ssl-сертификат устанавливается простым нажатием на соответствующую кнопку рядом с названием домена — если опасаетесь, то обратитесь в поддержку хостинга — ребята сделают это быстро и качественно!
Если Вы пользуетесь другим хостингом, то перейдите на сайт Бегет, зарегистрируйтесь, напишите в поддержку. Специалисты сами перенесут ваш сайт на свой хостинг, установят сертификат и настроят переадресацию с http на https протокол.
Шаг 2. Настраиваем доступ сайта с http на https протокол
Заходим в админку WordPress, выбираем Настройки — Общие.
На странице настроек находите строки:
Адрес WordPress (URL)
Адрес сайта (URL)
меняете в них протокол с http на https.
Нажимаете на кнопку «Сохранить изменения«.
Шаг 3. Вносим изменения в файлы .htaccess и robots.txt
Если Вы обращались в техподдержку хостинга Бегет с просьбой сменить протокол, то этот шаг не для вас, т.к. специалисты уже всё сделали и внесли правильные записи!
Новичкам-любителям «колдовать» самостоятельно сообщаю, что файлы .htaccess и robots.txt находятся на хостинге, в корневой папке. Для их редактирования, на главной странице управления хостингом
а) запустите в файловый менеджер
б) зайдите в папку с вашим сайтом
в) перейдите в папку public_html (на хостинге Beget она и будет корневой папкой вашего сайта)
После того, как найдете в менеджере файлов нужный вам файл (например .htaccess) два раза кликните по нему мышкой, откроется редактор файлов.
г) В начало файла .htaccess впишите следующие 4 строки:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?vladimiresipov\.com$ [NC]
RewriteCond %{HTTP:X-Forwarded-Proto} !=https
RewriteRule ^(.*)$ https://vladimiresipov.com/$1 [R=301,L]
заменив название моего домена на свой сохраните файл и закройте редактор.
д) В файле rodots.txt исправить строчки Host и Sitemap, чтобы заменить в адресе вашего сайта http на https. У меня они выглядят так:
Host: https://vladimiresipov.com
Sitemap: https://vladimiresipov.com/sitemap.xml
После проделанных манипуляций мой сайт станет доступен по https, но в браузере, перед адресом сайта стоял восклицательный знак в круге, указывающий, что на сайте есть проблемы…
Шаг 4. Меняем формат внутренних ссылок на сайте
По умолчанию все внутренние ссылки на моём сайте имели вид:
http://vladimiresipov.com/page/, http://vladimiresipov.com/post.html
Для корректной работы сайта по https протоколу нужно чтобы все внутренние ссылки на сайте были заданы в относительном формате вне зависимости от протокола и приняли следующий вид:
//vladimiresipov.com/page/, //vladimiresipov.com/post.html
Как заменить все внутренние ссылки на сайте на относительные?
1. Сохраните базу данных своего сайта, чтобы смело работать не опасаясь случайных ошибок
2. Установите и активируйте плагин Search & Replace
Перейдите на страницу настроек плагина Search & Replace
3. В поле «Search for» впишите значение, которое нужно найти: http://vladimiresipov.com
4. В поле «Replace with» впишите значение, на которое нужно заменить найденное: //vladimiresipov.com
5. В чекбоксе отметьте пункт «Select all tables» чтобы замена произошла во всех таблицах.
6. Снимите отметку в пункте «Dry Run» и поставим ее напротив пункта «Save changes to Database».
и нажмите «Do Search & Replce»
7. Преобразованную базу данных, через phpMyAdmin импортируйте на сайт для этого:
а) на панели управления хостингом откройте MySQL
б) в левом нижнем углу кликните по ссылке ведущей к открытию phpMyAdmin, введите свои данные и перед вами откроется интерфейс управления вашими базами данных.
В правом верхнем углу откройте вкладку «Импорт»
в) выберете файл созданный на прошлом шаге плагином Search & Replace
г) в нижнем левом углу нажмите кнопку «Вперёд» — новая база данных загрузится
8. Проверьте загружается ли медиа-контент (картинки, видео, аудио и т.д.). Все файлы должны загружаться по относительным адресам: //vladimiresipov.com/image/image1.jpg (у вас свой адрес сайта).
В моём случае всё прошло с первого раза и без ошибок!
Но в браузере перед адресом сайта всё ещё стоял восклицательный знак…
9. Проверьте ссылки на контент, который загружается со сторонних сайтов, какой там прописан протокол и загружается ли он по HTTPS-протоколу.
В моём случае счетчик посетителей TOP Mail отказался загружаться по новому протоколу и я его просто удалил, т.к. есть Яндекс.Метрика и Google Analytics.
Также на главной странице моего сайта были установлены несколько баннеров, подключенные по http протоколу, после замены их адресов на https в адресной строке браузеров Google Crome и Internet Explorer, перед адресом сайта появился долгожданный замочек!
Шаг 5.
Убедившись, что всё работает, отключите плагин Search & Replace, т.к. он больше не нужен.
Так же я отключил некоторые плагины, использование которых потеряло актуальность и немного доработал дизайн.
Зашел и внес изменения в Яндекс.Метрику и Google Analytics.
Вся работа заняла около двух часов.
Кажется, описал все проделанные шаги…
Напишите в комментариях, сколько времени у Вас занял процесс изменения адреса сайта с http на https протокол.
СВЯЗАННЫЕ СТАТЬИ:
очень познавательно!!!
спасибо, помогло. интересно срипт который кидали в фаил .htaccess, он там нужен еще? мне кажется что он изначально нужен для редиректа поисковых систем
У меня примерно также заняло времени около (2 часа) на установку https://
Еще есть один замечательный плагин — WordPress HTTPS, для тех кто не может или не хочет лезть в Базу данных)!
Спасибо, Андрей!
посмотрю, что за плагин такой)
Отличная инструкция! Владимир, огромное спасибо!
Все заработало!
Великолепно!
Рад, был помочь!