Как интернет-магазину на 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 – там не должно быть никаких предупреждений и ошибок. Проверьте таким способом основные виды страниц на своем сайте (главная страница, страница категорий, страница товара и т.п.).

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

 

 

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

 

Recent Posts

Зачем выбирать образование за границей: преимущества для будущего вашего ребенка

Учеба за границей уже давно ассоциируется с качественным образованием, новыми возможностями и множеством перспектив. Но…

4 дня ago

Как выбрать мастера для перетяжки мебели?

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

5 дней ago

Что лучше выбрать для хостинга: сервер VPS Windows или VPS Linux?

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

2 недели ago

Лоуренс Питер

Чтобы избегать ошибок, нужно набираться опыта; чтобы набираться опыта, надо делать ошибки Лоуренс Питер  

2 недели ago

Что такое Черное СЕО (Black Hat SEO) — вся нужная информация

Краткое определение Черного SEO Черное СЕО (или Черная оптимизация) — это любая практика, целью которой…

3 недели ago

Права категории C: кому они нужны и как их получить?

Получение водительских прав категории C открывает двери к профессиональной деятельности, связанной с управлением грузовыми автомобилями.…

3 недели ago