Digital Media Content

Переадресация с http на https – подчищаем хвосты

Сегодня рассмотрим такой случай как излишняя переадресация с http на https. Занимаясь оптимизацией интернет-проектов часто сталкиваюсь с ситуацией, когда на сайте очень большое количество ненужных редиректов 301 (страница навсегда перемещена из одного места в другое).

излишняя переадресация с http на https

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

Плохо это или нет, сайт ведь работает? Это однозначно не хорошо и неправильно. Здесь налицо ошибка “смешанный контент”, когда часть элементов страницы подгружается по https, а часть пытается подгрузится по http и срабатывает переадресация. Если сайт переехал на https, то все должно загружаться по этому протоколу.

Откуда берется множественная переадресация с http на https

Откуда берется смешанный контент и множество переадресаций с http на https? Такое часто происходит при незавершенном до конца переезде на https. Получили SSL-сертификат, установили его, добавили переадресацию с http на https в файл .htaccess. Проверили в строке броузера, что введенный http://site.ru открывается как https://site.ru и на этом успокоились. На деле, в базе данных сайта все абсолютные ссылки остались с http. С них и идет постоянный редирект.

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

Как решить проблему ненужной переадресации? Есть несколько вариантов. Первый, сделать там, где необходимо замену в базе данных с http на https. Способ простой, но не всегда им можно воспользоваться – от банального отсутствия доступа к базе данных, до недостатка знаний и опыта формирования правильных запросов к SQL базе у администратора или владельца сайта.

Второй способ, установить расширение, которое поможет без знаний SQL сделать простой и безопасный переход. В WordPress это можно сделать с помощью плагинов. Один из простых и функциональных Better Search Replace – небольшой русифицированный плагин для поиска/замены в базе данных сайта на WordPress.

Как пользоваться Better Search Replace

Устанавливаем и активируем плагин. В закладке Инструменты панели администратора выбираем Better Search Replace и попадаем во вкладку “поиск/замена”. В поле “Искать” вводим, что планируем заменить, в поле “Заменить на”, на что хотим заменить. Если есть необходимость заменить только адреса картинок, то, при их стандартном расположении можно указать, найти http://www.site.ru/wp-content/uploads/, заменить на https://www.site.ru/wp-content/uploads/.

Как пользоваться Better Search Replace

Далее следует выбор таблиц, где планируете произвести замену. Чтобы знать наверняка, ниже, в дополнительных настройках, ставите галочку “Холостой запуск (без замены)” и нажимаете кнопку “Запустить поиск/Замену”.

Дополнительные настройки Better Search Replace

Осуществится поиск http://www.site.ru/wp-content/uploads/ по всем таблицам без замены. По завершении поиска можно будет посмотреть, где искомый запрос был найден.

Поиск по таблицам базы данных

Отмечаете в “Выбор таблиц” таблицы, где необходимо произвести замены и запускаете процесс без галочки на холостом запуске.

Поиск и замена данных в better search replace

Если в процессе замены появится ошибка, открываете вкладку “Настройки” и уменьшаете параметр “Максимальный размер страницы”.

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

Переадресация с http на https - результаты работы better search replace

В дополнительных настройках есть чек-бокс “Замена GUID”. GUID это глобальный уникальный идентификатор записи. Он практически никогда не меняется. Если его изменить, то все обработчики ваших лент (RSS) на сторонних сайтах посчитают контент с измененным GUID новым и начнут его показывать у себя повторно. Поэтому лучше никогда не ставить галочку в этом чек-боксе.

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

Оставить комментарий

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