Как интернет-магазину на Magento перейти с HTTP на HTTPS

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

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

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

Итак, приступим!

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

Основные этапы включения HTTPS`а для Мадженто-сайта:

  • Изменение настроек в панели администратора
  • Обновление ссылок в базе данных
  • Проверка установки https

Внимание: делайте бекап файлов сайта и базы данных перед любыми изменениями

Желательно перед установкой сертификатов SSL и переходом на HTTPS выключить кеш в Мадженто.

Изменение настроек в Панели администратора

После установки сертификата на сервер, в первую очередь изменяем настройки в Панели админа по адресу System > Config > General > Web (Система> Конфигурация> Общие> Веб/Интернет). Здесь нам нужно заменить в поле Базовый URL ссылки сайта с http на https. Учтите, что это поле имеется в двух секциях: Небезопасное соединение и Безопасное соединение. Для нормального функционирования https`а достаточно заменить Базовый URL только в секции Безопасное соединение, но обратите внимание, что для некоторых функций в шаблонах при генерации ссылок нужно передавать дополнительный параметр array('_secure'=>true). В противном случае ссылки сайта будут генерироваться только в виде http://.... Чтобы не заменять все функции в шаблонах темы, достаточно лишь заменить формат ссылки и для настройки Базовый URL в секции Небезопасное соединение. Метод не идеальный, но рабочий.

После этого выставьте Да для полей «Использовать защищенные URL в пользовательской части» и «Использовать защищенные URL в панели администрирования».

Затем нажмите «Сохранить конфигурацию» в правом верхнем углу страницы настроек.

Тут важно действовать осмотрительно. Если вы обновляете эти настройки, а на самом сервере еще не установлены сертификаты SSL, вы рискуете заблокировать себе доступ к Панели администрирования из-за многократного цикла переадресаций.

Если все сделано правильно и в нужной последовательности, можете обновить главную страницу своего сайта, но уже с использованием https:// в начале ссылки. Обратите внимание, что адресная строка изменилась: начало ссылки подсвечивается зеленым («безопасным») цветом, а браузер помечает сайт как «Надежный»

Но, как вы можете заметить, некоторые ссылки на страницах сайта по-прежнему содержат старый HTTP адрес. Это происходит потому, что Мадженто хранит некоторые ссылки как статические в базе данных. Чтобы весь интернет-магазин Magento перевести на HTTPS (без предупреждений о смешанном контенте), вам необходимо обновить ссылки на все ресурсы сайта.

Обновление ссылок в шаблонах активной темы

Некоторые ссылки могут быть прописаны прямо в шаблонах активной темы, по адресу app/design/frontend/{ПАКЕТ_ТЕМ}/{АКТИВНАЯ_ТЕМА}/template/.

Воспользуйтесь поиском и, если найдете статические ссылки, замените протокол ссылки с http на https.

Обновление ссылок в базе данных

Если на вашем сайте немного товаров, вы можете обновить адреса ссылок путем простого редактирования существующих страниц через Панель администрирования. Для больших интернет-магазинов такая процедура не подходит – намного проще будет изменить все ссылки через интерфейс работы с базами данных MySQL (например, phpMyAdmin). В этом случае изменить все ссылки на сайте можно будет с помощью нескольких SQL-запросов.

Рассмотрим эту процедуру с использованием phpMyAdmin.

Откройте phpMyAdmin, а затем откройте нужную базу данных (которую использует текущая установка Мадженто). Потом откройте вкладку SQL, здесь введите нужные SQL-запросы.

Примеры SQL-запросов для обновления ссылок в таблицах catalog_category_entity_text (ссылки, которые могут использоваться в описании категорий товаров) и cms_page (ссылки, которые могут быть использованы в тексте CMS-страниц – в админке по адресу CMS — Page).

UPDATE catalog_category_entity_text SET value = REPLACE(value, 'http://VASH-DOMEN', 'https://VASH-DOMEN');
UPDATE cms_page SET content = REPLACE(content, 'http://VASH-DOMEN', 'https://VASH-DOMEN');

Внимание: замените VASH-DOMEN в запросах на свой фактический домен. Желательно использовать полное вхождение ссылки домена, чтобы случайно не заменить другие записи, которые содержат название вашего домена (например, адреса электронных ящиков).

Пояснение SQL-запросов:

  • UPDATE – этот оператор обновляет столбцы в соответствии с их новыми значениями в строках нужной таблицы
  • catalog_category_entity_text – название таблицы в базе данных
  • cms_page – название таблицы в базе данных
  • SET – в этом выражении указывается список полей таблицы, которые будут обновлены и непосредственно сами новые значения полей
  • value – поле (столбец) таблицы catalog_category_entity_text
  • content – поле (столбец) таблицы cms_page
  • REPLACE() – функция, которая заменяет некие данные. Синтаксис функции в примере:
    REPLACE({поле таблицы, где нужно что-то заменить}, '{точное вхождение, которое следует заменить}', '{точное вхождение, которым нужно заменить старые данные}')

Введите данные SQL-запросы и нажмите ОК. Это заменит все старые ссылки новыми в нужных таблицах базы данных.

Учтите, что ссылки вашего сайта могут храниться и в других таблицах/полях базы данных, тогда вам нужно будет изменить записи SQL-запросов. Сначала воспользуйтесь поиском по базе данных и выявите таблицы, которые содержат такие ссылки.

После этого не забудьте выполнить все рекомендации из статьи SEO-шные моменты переезда с http на https

Проверка установки https на Мадженто

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

Кроме того, если вы используете браузер Chrome, откройте сайт и перейдите в режим инструмента разработчика (нажмите клавишу F12) во вкладку Security – там не должно быть никаких предупреждений и ошибок. Проверьте таким способом основные виды страниц на своем сайте (главная страница, страница категорий, страница товара и т.п.).

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

Рекомендуем также ознакомиться:

Tags: Magento

Recent Posts

Как выучить немецкий язык легко и весело? С помощью Beste Freunde!

Немецкий часто считается сложным языком. Да, немецкая лексика имеет «тяжелый» характер. Да, есть действительно очень… Read More

27/09/2020

Отопление и горячая вода – когда нужно, а не когда соизволят включить

Тепло в доме и горячая вода в любое время для многих жителей многоквартирных и частных… Read More

19/09/2020

Инструкция по скачиванию видео с сервиса TikTok (бесплатно и без watermark)

Если вы еще не слышали о TikTok, тогда рекомендуем вам сначала ознакомиться с этим кратким… Read More

17/09/2020

Что есть в бюджетном ноутбуке – на какие характеристики рассчитывать?

Прошли те времена, когда приличный ноутбук стоил от 1000 долларов. Сегодня можно купить довольно неплохой… Read More

16/09/2020

Что лучше – цифровое телевидение Т2 или интернет-телевидение?

Современную жизнь невозможно представить без телевидения. Оно позволяет узнавать о событиях в Украине и мире,… Read More

02/09/2020

Гипоаллергенная подушка. Для чего она важна?

Сейчас найдется мало людей, у которых нет аллергии на продукты или пыльцу растений. Считается, что… Read More

28/08/2020