Підступна війна росії проти України. Орієнтовні втрати ворога
(станом на 18.04.2024)
456960
осіб
347
літаків
325
гелікоптерів
7196
танків
13835
ББМ
11637
артилерія
760
ППО
1046
РСЗВ
15618
машин
26
кораблі і катери
Як інтернет-магазину на Magento перейти з HTTP на HTTPS
Опубліковано Оновлено: 20.04.2019

Як інтернет-магазину на 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({поле таблиці, де потрібно щось замінити}, '{точне входження, яке слід замінити}', '{точне входження, яким потрібно замінити старі дані}')

 

Оновлення посилань в базі даних Magento

 

Введіть дані SQL-запити та натисніть ОК. Це замінить всі старі посилання новими в потрібних таблицях бази даних.

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

 

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

 

 

 

Перевірка встановлення https на Мадженто

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

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

Після того, як ви переконаєтеся, що все працює так, як потрібно, можете знову включити кеш.

 

 

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

 

 

Напишіть тут свою думку/питання

Ваша пошта не публікуватиметься. Обов’язкові поля позначені *