HTTPS — это защищённое соединение, которое шифрует информацию, передаваемую между браузером посетителя сайта и сервером. Оно помогает защитить, например, имена пользователей, пароли и данные, введённые в формы, от перехвата и изменения.
HTTPS использует протокол TLS для защиты данных. Обычное HTTP-соединение не шифрует данные, поэтому посторонний человек в небезопасной сети может прочитать или изменить их.
Для нового магазина Magento HTTPS на сервере включён по умолчанию
Для магазина Magento, установленного на новом виртуальном сервере или новом поддомене, HTTPS на сервере включён по умолчанию.
Бесплатный сертификат Let’s Encrypt и перенаправление HTTP-трафика на HTTPS настраиваются автоматически. Вам не нужно отдельно включать HTTPS в панели управления сервером или вручную заказывать сертификат.
Для автоматической выдачи сертификата домен или поддомен должен быть направлен DNS-записями на соответствующий сервер Zone.
Однако включённый на сервере HTTPS не всегда означает, что Magento настроен на использование HTTPS как в магазине, так и в панели управления. При необходимости проверьте эти настройки по инструкции ниже.
Когда нужна эта инструкция?
Эта инструкция предназначена прежде всего для ранее созданных магазинов Magento, которые всё ещё используют HTTP. Изменение настроек Magento может потребоваться и для магазина, перенесённого от другого хостинг-провайдера, даже если на сервере Zone HTTPS уже включён.
Если ваш магазин и панель управления уже используют HTTPS и работают корректно, выполнять приведённые ниже действия не нужно.
Основная инструкция описывает настройку Magento 2. Для Magento 1 используйте инструкции для старой версии, приведённые во втором шаге. Названия меню и настроек могут зависеть от версии Magento и языка панели управления.
Видеоинструкция – Magento 1
В видео показана настройка HTTPS в Magento 1. Видео на эстонском языке, но вы можете следовать действиям, показанным на экране. В Magento 2 меню и некоторые названия настроек отличаются.
На новых виртуальных серверах и поддоменах HTTPS включён по умолчанию, поэтому повторять показанные в видео действия по заказу сертификата и включению перенаправления на HTTPS не нужно.
1. Проверьте, включён ли HTTPS на сервере
Откройте магазин, введя в адресную строку браузера его адрес, начинающийся с https://, например https://yourdomain.ee.
Если магазин открывается без ошибки сертификата, HTTPS на сервере включён и можно переходить к настройке Magento. Если в настройках Magento ещё используются HTTP-адреса, ссылки магазина могут вести обратно на HTTP или магазин может перенаправлять вас туда автоматически.
Если на виртуальном сервере или поддомене HTTPS ещё не включён, установите бесплатный сертификат по инструкции HTTPS и бесплатный SSL-сертификат – Let’s Encrypt. После выдачи сертификата активация HTTPS может занять до 15 минут.
Если браузер показывает ошибку сертификата, устраните её перед выполнением следующих шагов. При необходимости свяжитесь со службой поддержки Zone.
2. Настройте Magento на использование HTTPS
Перед внесением изменений создайте резервную копию файлов и базы данных магазина.
Magento 2
- Войдите в панель управления Magento.
- Откройте
Stores→Settings→Configuration. - В меню слева выберите
General→Web. - Разверните раздел
Base URLs (Secure). - Убедитесь, что в поле
Secure Base URLуказан полный HTTPS-адрес магазина, напримерhttps://yourdomain.ee/. - Установите для обеих настроек значение
Yes:Use Secure URLs on Storefront;Use Secure URLs in Admin.
- Нажмите
Save Config, чтобы сохранить изменения.
Базовый URL должен заканчиваться косой чертой /. Если Magento установлен в подпапке, сохраните её в адресе, например https://yourdomain.ee/store/.
Не изменяйте переменные в полях Base Link URL и Secure Base Link URL, а также отдельно заданный адрес или путь панели управления. При стандартной конфигурации не нужно менять и поля адресов статических файлов и медиафайлов, если в них используются переменные базового URL.
Если ваша установка Magento обслуживает несколько сайтов или представлений магазина, убедитесь, что изменяете настройки нужного сайта или представления. При необходимости обратитесь за помощью к администратору магазина.
Если после сохранения изменений и очистки кеша некоторые ссылки магазина всё ещё ведут на HTTP-адреса, проверьте также поле Base URL в разделе Base URLs. При необходимости замените начало адреса http:// на https://, оставив остальную часть без изменений.
Magento 1
- Войдите в панель управления Magento.
- Откройте
System→Configuration. - В меню слева выберите
General→Web. - Разверните разделы
UnsecureиSecure. - В поле
Base URLобоих разделов укажите HTTPS-адрес магазина, напримерhttps://yourdomain.ee/. Сохраните остальную часть адреса и косую черту в конце. - В разделе
Secureустановите для настроекUse Secure URLs in FrontendиUse Secure URLs in AdminзначениеYes. - Нажмите
Save Config, чтобы сохранить изменения.
Если необходимые HTTPS-адреса и настройки уже заданы, менять их повторно не нужно.
3. Очистите кеш Magento
После сохранения настроек очистите кеш Magento, чтобы магазин использовал обновлённую конфигурацию.
- Magento 2: откройте
System→Tools→Cache Management. - Magento 1: откройте
System→Cache Management.
Нажмите Flush Magento Cache.
Затем обновите страницу магазина в браузере. При необходимости снова войдите в панель управления, используя её HTTPS-адрес.
4. При необходимости обновите адреса в содержимом магазина
В содержимом магазина могут оставаться HTTP-ссылки, например на изображения, добавленные на информационные страницы или в блоки содержимого. Такие ссылки могут встречаться и у логотипов способов оплаты в нижней части сайта.
Если ресурс не загружается или вызывает предупреждение о смешанном содержимом, измените его адрес с HTTP на HTTPS в соответствующем содержимом. Например, замените http://yourdomain.ee/image.jpg на https://yourdomain.ee/image.jpg.
Перед изменением адреса проверьте, доступен ли ресурс по HTTPS. Адрес другого сайта не всегда можно перевести на HTTPS простой заменой начала адреса.
Если ссылок, требующих исправления, много или вы не можете найти, где они находятся, обратитесь за помощью к администратору или разработчику магазина.
5. Проверьте работу магазина
Откройте магазин по HTTPS-адресу и проверьте несколько страниц. Убедитесь, что главная страница, категории, страницы товаров, корзина и оформление заказа работают корректно.
Также проверьте изображения, оформление, меню, формы, вход в учётную запись покупателя и в панель управления. Браузер не должен показывать ошибки сертификата или предупреждения о смешанном содержимом.
Если какой-либо элемент не загружается или браузер предупреждает о смешанном содержимом — mixed content, в теме оформления или одном из расширений могут оставаться HTTP-ссылки на изображения, шрифты, файлы CSS или JavaScript.
Для исправления этих ссылок может потребоваться изменение настроек или файлов темы либо расширения. Если вы раньше не редактировали эти файлы, обратитесь за помощью к администратору или разработчику магазина.
Переходите к следующему шагу только после того, как магазин будет корректно работать с HTTPS.
6. Проверьте перенаправление HTTP-трафика на HTTPS
На новых виртуальных серверах и поддоменах перенаправление HTTP-трафика на HTTPS включено по умолчанию.
Для проверки откройте магазин по HTTP-адресу, например http://yourdomain.ee. Браузер должен автоматически перенаправить вас на https://yourdomain.ee.
Если перенаправление не включено, включайте его только после изменения настроек Magento и проверки корректной работы магазина с HTTPS.
Откройте Мой Zone → Управление сервером → Вебсервер. В разделе Настройки главного домена или Поддомены нажмите кнопку переадресовать на HTTPS рядом с соответствующим доменом.
Все HTTP-адреса магазина будут перенаправляться на соответствующие HTTPS-адреса с помощью постоянного перенаправления 301. Это также сообщает поисковым системам, что адреса магазина теперь используют HTTPS.