0 руб
Оформить заказВ этой статье речь пойдет о переводе вашего сайта на защищенный протокол HTTPS.
Прежде всего нам нужно подключить SSL сертификат к своему сайту в панели управления хостинга.
Как правило на сегодняшний день почти на всех хостингах есть возможность подключить к сайту бесплатный SSL сертификат (например: Lets Encrypt). Либо купить и подключить платный SSL сертификат, на ваш выбор. Более подробно об этом вы можете узнать в службе поддержки вашего хостинг-провайдера.
Включаем поддержку SSL в админке Опенкарт 3
Авторизуемся и заходим в панель администратора нашего интернет-магазина.
Переходим в раздел «Система» -> «Настройки» и жмем на кнопку «Редактировать» в строке с названием магазина.
Дальше, переходим во вкладку «Сервер» и жмем "Использовать SSL" -> «Да»
Обязательно не забываем сохранить настройки -> жмем кнопку «Сохранить» в правом верхнем углу.
Настраиваем поддержку протокола HTTPS на сервере Opencart 3.
Заходим через ФТП - клиент или файловый менеджер вашего хостинга в корень (корневую директорию) вашего сайта на Опенкарт 3. Корневая директория это там где находятся папки "admin", "catalog", "image", "system". Находим там файл "config.php" и открываем его с помощью текстового редактора.
Находим строки:
// HTTP
define('HTTP_SERVER', 'http://site.ru/');
// HTTPS
define('HTTPS_SERVER', 'http://site.ru/');
И заменяем эти строки как указано ниже (вместо site.ru - ваш домен):
// HTTP
define('HTTP_SERVER', 'https://site.ru/');
// HTTPS
define('HTTPS_SERVER', 'https://site.ru/');
3. Далее переходим в папку "/admin/ " и открываем файл "/admin/config.php"
Найдим строки:
// HTTP
define('HTTP_SERVER', 'http://site.ru/admin/');
define('HTTP_CATALOG', 'http://site.ru/');
// HTTPS
define('HTTPS_SERVER', 'http://site.ru/admin/');
define('HTTPS_CATALOG', 'http://site.ru/');
И заменяем, как указано ниже (не забываем что вместо site.ru - имя вашего домена):
// HTTP
define('HTTP_SERVER', 'https://site.ru/admin/');
define('HTTP_CATALOG', 'https://site.ru/');
// HTTPS
define('HTTPS_SERVER', 'https://site.ru/admin/');
define('HTTPS_CATALOG', 'https://site.ru/');
После редактирования обязательно сохраните файлы.
После этого обновите кэш системы и модификаторов.
SSL сертификат и протокол HTTPS вашем магазине подключен!
Но это еще не все...
После всех выше проделанных действий ваш сайт станет доступен по протоколу HTTPS.
Но, он по прежнему останется доступен еще и по протоколу HTTP.
А это не очень хорошо для поискового продвижения.
Настройка редиректа в файле .htaccess для Опенкарт 3
Что бы исключить зеркала сайта нужно настроить редирект с HTTP на HTTPS
Одновременно с этим настраиваем редирект с www.site.ru на site.ru что бы полностью склеить все зеркала вашего сайта.
Для этого снова идем на сервер в корневую директорию вашего сайта и находим там файл ".htaccess".
Если такого файла нет, а вместо него есть файл ".htaccess.txt" то переименовываем ".htaccess.txt" в ".htaccess" (то есть убираем ".txt").
Открываем этот файл в редакторе, находим строку 'RewriteBase /' и ниже добавляем следующий код
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
ВАЖНО! Редиректы в файле .htaccess необходимо добавлять сразу после строки с 'RewriteBase /'.
Если не работает, попробуйте поставить выше, сразу после строки с 'RewriteEngine On'.
Сохраняем файл, очищаем кеши, в том числе и кеш вашего браузера и проверяем работу сайта.
Еще важный момент! В связи с тем, что у разных хостинг-провайдеров разные настройки серверов, этот вариант редиректа может работать не на всех серверах.
Если редирект не сработал, можно попробовать другие варианты, опубликованные ниже, либо обратиться к вашему хостеру за правильным решением.