Перед тем как настроить https для OpenCart, необходимо заранее купить подходящий SSL-сертификат и установить его. Сделать это можно самостоятельно (по готовым инструкциям) или с помощью техподдержки вашего хостинг-провайдера.
И обязательно сохраните резервную копию веб-сайта и базы данных. Если случится форс-мажор – сможете легко восстановить работоспособность площадки. Это условие не обязательное, но строго рекомендуемое.
После подготовительных манипуляций можно приступать к настройке https для OpenCart.
Редактирование файлов конфигурации
Для начала перейдите на хостинг и найдите файл config.php. Он находится в корневом каталоге веб-сайта. Затем отредактируйте URL-адрес, изменив http на https. В результате получится так:
// HTTP
define('HTTP_SERVER', 'https://site.ua/');
// HTTPS
define('HTTPS_SERVER', 'https://site.ua/');
Затем откройте папку admin, найдите файл config.php и добавьте https протокол:
// HTTP
define('HTTP_SERVER', 'https://site.ua/admin/');
define('HTTP_CATALOG', 'https://site.ua/');
// HTTPS
define('HTTPS_SERVER', 'https://site.ua/admin/');
define('HTTPS_CATALOG', 'https://site.ua/');
Как настроить HTTPS в административной панели OpenCart?
На данном этапе настройка https для OpenCart выполняется так:
- Зайдите в административную панель. Она открывается по адресу http://sait.ua/admin.
- Откройте раздел «Система» и зайдите в «Настройки». Щелкните на иконку редактирования напротив сайта.
- Откройте вкладку «Сервер». В пункте «Использовать SSL» поставьте отметку «Да» и примените внесенные изменения.
Как настроить HTTPS перенаправления в .htaccess?
Чтобы перевести сайт на OpenCart на HTTPS, надо настроить автоматическое перенаправление пользователей, которые заходят по старому адресу с HTTP. Для этого в файле .htaccess (находится в корневом каталоге веб-ресурса) прописываются соответствующие правила. Вставлять их нужно между строчками RewriteEngine On и RewriteBase /.
Для веб-ресурсов с главным зеркалом без www прописываются такие правила:
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTP:X-Forwarded-Proto} =http [OR]
RewriteCond %{HTTP:X-Forwarded-Proto} =""
RewriteCond %{HTTP:X-HTTPS} !1 [OR]
RewriteCond %{HTTPS} !=on
RewriteCond %{REQUEST_URI} !robots\.txt
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
А если домен com.ua сайта с www:
RewriteCond %{HTTP_HOST} !^www\.(.*)$ [NC]
RewriteRule ^ https://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTP:X-Forwarded-Proto} =http [OR]
RewriteCond %{HTTP:X-Forwarded-Proto} =""
RewriteCond %{HTTP:X-HTTPS} !1 [OR]
RewriteCond %{HTTPS} !=on
RewriteCond %{REQUEST_URI} !robots\.txt
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
Затем проверьте, что все работает. То есть, что при попытке зайти на сайт с www или без www по старому адресу (c http) вас автоматически перенаправляет на соответствующее зеркало с https. Если все нормально – работы по переходу считаются успешно завершенными.
Теперь вы знаете, как настроить https для OpenCart. Как видите, ничего сложного нет – достаточно отредактировать конфигурационные файлы, внеся небольшие правки.