Как убрать редирект на https wordpress

How to disable HTTPS and redirect HTTPS to HTTP in WordPress?

The client just wanted to test the site without pointing the domain to the new server. We just want to test the site in port80 (HTTP) only, since they haven’t the purchased SSL yet.

So the website is set up at http:// and we are using ip to test it.

But the problem is, all the themes (css/js files) are loaded over HTTPS. We need to disable it and load these files over HTTP only.

What I have tried so far that didn’t work for me

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

But unfortunately this doesn’t work.

The problem is all css are loaded in HTTPS but these files exists when you try them to search in browser using http

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

3 Answers 3

1. Set WP_CONTENT_URL in wp-config.php

Your WP_CONTENT_URL might be using HTTPS. As the issue is with including your theme files, this is the first thing I’d suggest checking out.

Try adding this to wp-config.php to force the website to use HTTP when including from the wp-content folder:

2. Set WP_HOME and WP_SITEURL in wp-config.php

Set the WP_HOME and WP_SITEURL in wp-config.php to use HTTP. This will override whatever was set in the WP Settings.

You can also confirm what the values are in the database by querying the wp_options table and look for siteurl and home values, as you have already tried.

4. Hard-coded URLs the WP database

WP writes the full URL to the database, so there could be instances of urls using HTTPS in the db. You could check each table directly in the database, but I find the plugin «Better Search Replace» quicker and easier to use. You can do a «dry run» to search for instances of «https://www.example.com». If it finds any, you can use the plugin to replace them all (but as always, make sure you do a db backup first before making any changes directly to your db!!)

5. Plugins

If all else fails, try disabling the plugins to check.

6. Hardcoded URLs in theme files or plugin files

It is unlikely with commercial themes & plugins, but it is possible that HTTPS is hard-coded into the theme files. Do a full search or try disabling the plugins and changing the theme to a default WP theme to check.

7. Caching

Your browser, server, caching plugins, minimizer plugins (for CSS & JS) might have HTTPS in the cache (Unlikely in your case, but I’ll mention it anyway). Even other less obvious plugins can have caches too, such as gallery plugins.

Clear all your caches including your browser, turn off caching plugins, etc.

You could also try adding this try adding the following to wp-config.php

8. Admin

I’ve run into this problem for similar reasons, and if the first 4 steps don’t work I find it’s usually a caching issue.

I hope that helps, there a lot of things you can try, and if that doesn’t fix it I’m out of ideas!!

Источник

Отключить SSL / HTTPS для wordpress

Спасибо за любую помощь.

Решение. Проблема была не в том, что я думал. Dataplicity (я убегаю от pi) заставляет использовать HTTPS, но поскольку wordpress не использовал HTTPS, сценарии «небезопасности» не загружались. Все, что мне нужно было сделать, это включить HTTPS.

Я уверен, что ответы ниже помогли бы, если бы моя проблема была тем, что я думал, и я надеюсь, что они помогут другим с той же проблемой, что и я.

Проверьте ваш файл wp-config.php для таких строк, как:

Также проверьте таблицу _options базы данных вашей базы данных:

Проверьте настройки URL вашего веб-сайта. Это можно сделать через базу данных, такую ​​как Пэт Саид, но если ваш не тот технический подход и вы все равно можете получить доступ к администратору WordPress, используйте это.

После ответа Пата. Вы можете попробовать добавить эти 2 строки в файл wp-config.php, чтобы узнать, исправляет ли это ошибку:

Это заставит WordPress использовать http-версию вашего домена. Если это исправляет проблему, это вызывает в базе данных что-то.

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

Кроме того, я рекомендую использовать режим Incognito Chrome или частный режим Firefox для посещения вашего сайта и посмотреть, используется ли HTTPS в WordPress.

Если он работает в режиме инкогнито (WordPress правильно использует HTTP), вы должны попробовать очистить кеш браузера. Я видел, что браузерный кеш перенаправляет http-трафик на https раньше, даже если https не работает. Я бы рекомендовал убедиться, что это не кеш.

Проверьте ваш файл wp-config.php для таких строк, как:

define (‘WP_SITEURL’, ‘https: // ….’); define (‘WP_HOME’, ‘https: // …..’);

RewriteEngine On RewriteCond% в RewriteRule ^ http: //% % [R = 301, L, NE]

или лучший вариант

если вы успешно установили wordpress, перейдите в настройки> genral>

Адрес (URL) в WordPress: загрузите эту форму https в адрес http-сайта (URL): то же самое с этим

Источник

Как перевести WordPress сайт на HTTPS (SSL)

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

Вы собираетесь перевести WordPress сайт на HTTPS и установить сертификат SSL, но не знаете, как правильно это сделать? В нашем руководстве мы расскажем о переезде с http на https на WordPress сайте. Как исправить возможные ошибки после перехода на https, как настроить редирект на https.

Не волнуйтесь, если вы не понимаете, что такое SSL и HTTPS и зачем это нужно вашему сайту.

Что такое HTTPS?

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

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

Чтобы защитить передаваемые данные, пароли, адреса, необходимо использовать безопасное соединение.

Для реализации безопасного соединения требуется сертификат безопасности – SSL.

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

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

Теперь вы можете задать себе вопрос, зачем мне переводит свой сайт WordPress с HTTP на HTTPS? У вас простой блог или сайт малого локального бизнеса, который не имеет возможности платежей.

Зачем переводить WordPress сайт на HTTPS и SSL?

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

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

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

Поэтому все ваши сайты WordPress должны перейти на https незамедлительно.

Если вы владелец интернет-магазина или принимаете платежи, то переход вашего WordPress (WooCommerce) сайта на https обязателен. Многие платежные системы, такие как Яндекс.Касса, PayPal, Stripe просто не подключат эквайринг к вашему сайту, если он не будет иметь защищенное соединение.

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

Что нужно для использования HTTPS/SSL на WordPress сайте

Требования для перевода WordPress сайта на HTTPS (SSL) минимальны. Всё, что вам нужно сделать, это купить SSL сертификат или получить его бесплатно от Let’s Encrypt на вашем хостинге.

Все популярные хостинги в СНГ предлагают выпустить бесплатный SSL сертификат на 3 месяца. После 3 месяцев он будет продлеваться автоматически.

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

Для малого бизнеса или просто новостного сайта, используйте бесплатный сертификат SSL.

Настройка SSL HTTPS на WordPress сайте

После того, как вы выпустите SSL-сертификат для своего домена, вам потребуется настроить использование SSL и HTTPS на своем WordPress сайте.

Мы покажем вам два способа, как настроить SSL сертификат на WordPress сайте. Вы можете выбрать тот вариант, который больше всего соответсвует вашим потребностям.

Настройка SSL/HTTPS в WordPress с помощью плагина Really Simple SSL

Использование Really Simple SSL для перевода WordPress на https – это самый простой способ, который мы рекомендуем для новичков.

Первое, что нужно сделать – установить и активировать плагин Really Simple SSL.

Установка не требуется! Вам нужен лишь SSL сертификат, а этот плагин сделает всё остальное.

1+ Million Активных пользователей

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

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

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

Хоть разработчики плагина и говорят, что если удалить плагин, то настройки SSL сохранятся, – это не так. После отключения плагина у вас появятся ошибки смешанного контента. Если на сайте остались картинки и ссылки с протоколом http, придется их менять на https.

Если вы не хотите зависеть от плагина, то рекомендуем прочитать статью до конца. Узнайте, как выполнить перевод WordPress на HTTPS вручную.

Как настроить SSL/HTTPS в WordPress вручную

Этот метод требует устранения неполадок и редактирование файлов WordPress вручную. Пусть это вас не пугает, так как этот способ более надежный и постоянный. Данный способ мы используем на WPtuts.ru.

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

В рамках этого способа вам может понадобиться редактировать тему WordPress и файлы с кодом.

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

Не забудьте нажать кнопку “Сохранить изменения”, чтобы применить настройки.

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

301 редирект на https в WordPress

Если вы используется сервер Nginx (большинство пользователей используют сервер с Apache), вам потребуется добавить следующий код для 301 редиректа на https в файл конфигурации:

Не забудьте заменить example.com на имя своего домена.

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

Если вы хотите использовать SSL и HTTPS в вашей админ панеле WordPress или на страницах входа в систему, вам потребуется настроить SSL в файле wp-config.php.

Добавьте следующий код перед надписью “/* Это всё, дальше не редактируем. Успехов! */” в файле wp-config.php в корне сайта:

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

Почему появляется ошибка смешанного контента?

Ошибка смешанного контента возникает в случае, если страница пытается загрузить небезопасный контент (контент с протоколом http в URL-адресе). Это могут быть как CSS стили, JS-скрипты, так и вставленные картинки. Если это произойдет, то в адресной строке заместо замка, вы увидите предупреждение.

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

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

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

Чтобы узнать, какой контент загружается по небезопасному протоколу http, воспользуйтесь встроенным инструментом разработчика в браузере Inspect. Ошибка смешанного контента (Mixed Content) будет отображаться как предупреждение в консоли с информацией о элементе с небезопасным контентом.

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

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

Большинство современных тем и плагинов автоматически меняют http на https при установке SSL. Но бывают исключения.

Как исправить ошибку смешанного контента в базе данных WordPress

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

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

Эту операцию легче всего сделать с помощью плагина Better Search Replace. Более подробную инструкцию по работе с этим плагином вы можете прочитать в нашей инструкции по изменению адреса сайта WordPress.

Небольшой плагин для обновления URL или другого текста в базе данных

1+ Million Активных пользователей

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

Плагин найдет в вашей базе все URL-адреса, начинающиеся с http и заменит из на https. Это может занять некоторое время, в зависимости от размера вашей базы данных WordPress.

Исправление ошибок смешанного контента в теме сайта WordPress

Ещё одна распространенная причина смешанного контента при перехода с http на https на WordPress сайте – ваша активная тема WordPress. Если вы используете качественно написанную тему, которая соответствует стандартам кодирования WordPress, то проблем возникать не должно.

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

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

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

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

Исправление ошибок смешанного контента, вызванных плагинами

Некоторый смешанный контент могут загружать установленные и активные плагины WordPress. Любой плагин, который написал в соответствии стандартам разработки WordPress не привезет к ошибкам смешанного контента.

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

Если вы не смогли избавиться от ошибок смешанного контента, то рекомендуем временно воспользоваться плагином Really Simple SSL. Плагин сам исправит ошибки, что позволит вам полностью перейти на HTTPS/SSL. Далее у вас будет время полностью исправить ошибки и отказаться от плагина.

Переход на HTTPS у сайта WordPress в Яндекс.Вебмастер и Google Search Console

Поисковые системы, такие как Яндекс и Google, рассматривают https и http, как два разных сайта. Это означает, что вам нужно сообщить поисковым системам Яндекс и Google, что ваш сайт переехал на HTTPS версию сайта. Это поможет избежать проблем с SEO оптимизацией сайта.

Переход на HTTPS в Яндекс.Вебмастер

Многие боятся переходить на HTTPS пугаясь, что их позиции могут “просесть” и трафик на сайт упадет. Если вы сделали всё правильно, то позиции сайта могут просесть на некоторое время, но далее они вернутся обратно или даже выше.

Мы постарались описать, как перейти на сайте WordPress на https без потери позиций. Мы настроили редиректы с http на https, весь контент имеет протокол https, нет смешанного контента на страницах.

Последнее, что осталось сделать, это сказать Яндексу, чтобы он начал индексировать HTTPS версию, как основную.

Если ваш сайт уже добавлен в Яндекс.Вебмастер с версией http, то зайдите на страницу https://webmaster.yandex.ru/site/indexing/mirrors/ и выберите ваш домен из списка.

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

Далее поставьте галочку “Добавить HTTPS” и нажмите кнопку сохранить. Далее в течении нескольких недель (в зависимости от количества страниц и посещаемости) сайт переиндексируется.

Переход на HTTPS в Google Search Console

Google расценивает http и https версии сайта, как разные сайты. Процесс перехода с http на https в Google отличается от переезда в Яндексе.

Войдите в свою учетную запись Google Search Console и добавьте версию сайта с https, как новый сайт.

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

После этого Google попросит вас подтвердить права на сайт. Выберите удобный для вас способ подтверждения.

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

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

Убедитесь, что в вашем аккаунте добавлены две версии сайта – http и https.

Это говорит Google, что вы хотите, чтобы https версия сайта рассматривалась как основная. В сочетании с уже настроенным 301 редиректом, Google перенесет ваши страницы и их позиции в поисковой выдаче в https-версию вашего сайта. Google заявляет, что наличие https версии расценивается как положительный фактор ранжирования. Не забывайте наличие SSL сертификата это один из сотни факторов ранжирования и если ваш контент хуже ваших конкурентов, на сильное повышение позиций надеяться не стоит.

Надеемся, эта статья поможет вам совершить переход с http на https на вашем WordPress сайте без потери позиций. Если у вас возникли сложности при переезде, то задавайте вопросы в комментарии. Мы постараемся оперативно ответит вам.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Источник

Делаем редирект на HTTPS в WordPress — 3 простых шага для создания 301 переадресации

Как убрать редирект на https wordpress. Смотреть фото Как убрать редирект на https wordpress. Смотреть картинку Как убрать редирект на https wordpress. Картинка про Как убрать редирект на https wordpress. Фото Как убрать редирект на https wordpress

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

Что такое протокол HTTPS

Протокол HTTPS (расшифровка Hypertext Transport Protocol Secure) — это технология, шифрующая информацию между сайтом и пользователем. При вводе информации посетителем и выводе ее на экран, шифруется все, что дает преграду злоумышленникам похитить личные данные.

Технологии применяемые в HTTPS

Почему важно перейти на HTTPS

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

Общие принципы перехода на HTTPS

Принцип перехода прост, вы покупаете, либо берете бесплатный SSL — сертификат, устанавливаете на сайт (сами или помогает поддержка хостинга), настраиваете элементы для корректного отображения и радуетесь зеленой полоске в браузере. По шагам выглядит так:

Изменение префиксов в панели вордпресса

Для редиректа на HTTPS главной страницы в панели WordPress заходим в настройки, в раздел общие и прописываем там дополнительную букву S, как показано на скриншоте. Теперь заходите на сайт по протоколу, по заранее известным логину и паролю.

После смены адреса и подключив перенаправление при входе в админ-панель придется по новой вводить логин и пароль. Совет если не помните то заранее их восстановите.

Перенаправление остальных элементов

Устанавливаем и вводим настройки, заходим в раздел инструменты > Update URLs. В поле Old URL вводим адрес сайта без протокола, а New URL с ним.

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

Инструмент начнет работу, и после покажет сводную таблицу сколько элементов изменено. После проделанной операции, можно деактивировать и удалить его из WordPress.

Завершающим этапом является добавление в WordPress 301 перенаправления в файле htaccess. Он регулирует работу Apache, определим существует ли этот файл на вашем сайте.

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

Идем в корень WordPress и смотрим. Если существует, то открываем его для редактирования, если нет, то создаем. Нужно подключиться к сайту через FTP соединение, мы используем FileZilla. Войдя в корневой каталог (определяем корень по папкам wp-content и wp-admin), находим htaccess и кликом правой кнопкой мыши выбираем “Просмотр/Правка”.

После сохранения изменений FileZilla запросит разрешение на перезапись файла htaccess, соглашаемся и программа начнет процесс загрузки.

Это позволит имеющиеся страницы WordPress перевести на https протокол и выводить их автоматически с правильным префиксом. Для проверки работы, зайдите на любую страницу и сотрите букву S, нажмите enter, если редирект с http на https WordPress сработал, то продолжаем.

С помощью плагина Easy HTTPS Redirection

Наиболее простой метод установить плагин, мы советуем Easy HTTPS Redirection. В данном случаем остальные действия делать не нужно. Установив, переходим к настройке.

Какие проблемы могут возникнуть при переходе на HTTPS

Проблем при переходе на HTTPS немного. Первая причина не убраны со страницы все исходящие и внутренние ссылки с протоколом HTTP. Далее редиректы, неправильно прописанные в htaccess. Не знание специфики WordPress, что и где нужно менять. Что делать в таких ситуациях:

Если удобнее учится по видео, то смотрите наш обучающий ролик.

Чеклист всех операций

Мы смогли поставить редирект на HTTPS в cms WordPress и сертификат работает правильно. После всех операций, сайт должен быстро проиндексироваться поисковыми системами и обновлен в выдаче.

Источник

Проблемы и решения при переезде WordPress-сайта на HTTPS

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

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

Так как вопросом переезда на HTTPS я озадачился впервые, то прежде всего набросал небольшой план действий, который выглядел просто и вполне логично:

В таком порядке мы и будем продвигаться.

Приобретение и установка SSL-сертификата

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

Перед оплатой заказа SSL-сертификата я создал почту admin@codeseller.ru, на которую позже будут приходить письма необходимые для подтверждения заказа на SSL-сертификат.

Сразу после произведенной оплаты SSL-сертификата, никаких дальнейших инструкций я не получил, поэтому решил написать в поддержку для их получения. Ребята с техподдержки что то похимичили, зачем то зачислили мне средства опять на счет, затем заново списали их в оплату SSL-сертификата, а заказ оформленный мной ранее удалили и через некоторое время на созданную почту пришло письмо со ссылкой подтверждения, по которой я перешел и подтвердил свой заказ на создание SSL-сертификата. Хм, сделал вывод, что я что то сделал неверно при первоначально оформленном заказе.

Переключение WordPress-сайта в режим HTTPS

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

Идем в панель управления хостинга и переключаем работу сайта в режим HTTPS, далее идем в общие настройки сайта и изменяем «Адрес WordPress (URL)» и «Адрес сайта (URL)» с учетом протокола HTTPS. После сохранения настроек сайт уходит в цикличную переадресацию или, как еще говорят, в луп.

Согласно полученной из различных источников информации в файле wp-config.php требуется также размещать код:

На этом этапе поддержка хостинга послала меня куда подальше, а именно на форум поддержки WordPress, поэтому пришлось полагаться только на себя.

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

Пришлось включить мозги и начать анализировать ситуацию. Решил посмотреть, а что собственно возвращает фундаментальная для WP функция is_ssl() на данном этапе, в возвращала она false, т.е. говорила нам, что никакого HTTPS на сайте сейчас нет. Именно поэтому и возникла цикличная переадресация, WP не фиксировал, что HTTPS режим работает и перенаправлял на HTTP, а сервер гнул свою линию и с HTTP перенаправлял обратно на HTTPS.

Изменяю приведенный выше код в файле wp-config.php под существующие реалии:

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

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

Вот так редирект замечательно заработал.

Вспомнив техподдержку хостинга еще раз, переходим к следующему этапу.

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

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

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

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

Далее, аналогичным образом решаем проблему с абсолютными путями до аватарок пользователей сохраненных через плагин WP-Recall и Ulogin. Для этого делаем два запроса:

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

Остался последний штрих.

Сообщаем поисковикам о переезде сайта на HTTPS

Для этого производим несколько несложных действий:

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

UPD: Решение проблемы с работой крона

Чуть позже, после переезда на HTTPS, обнаружил проблему в работе wp-cron на сайте. Пока проблема в работе крона от WordPress работающего в обычном режиме не решена, решил использовать альтернативный вариант, прописав в файле wp-config.php:

События крона стали выполняться, но были замечены некоторые проблемы с работой определенных событий. В результате анализа выявил некорректную работу(?) стандартной wp-функции get_posts(), которая вызывалась внутри этих событий. В качестве решения пришлось написать прямой запрос к БД на получение необходимых данных из таблицы wp_posts. После этого проблему в работе крона на сайте можно было считать решенной.

Хотя, возможно чуть позже, удастся выявить причину неработоспособности крона в обычном режиме. Если кому то будет интересно, то удалось выявить проблему в работе функции wp_remote_post(), которая используется в обычном режиме. Работа функции заканчивается ошибкой и возвращает сообщение о слишком большой кол-ве переадресаций, причину этого выявить пока не удалось.

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *