Прежде чем приступать к настройке SSL на сайте Joomla, убедитесь, что на сервере хостинга установлен SSL-сертификат для вашего домена. Должен быть включен HTTPS.
Общие настройки сайта
Далее авторизуйтесь в админ-панели сайта по ссылке вида /administrator/, после чего перейдите в раздел Система — Общие настройки. Нажмите вкладку Сервер, в пункте Включить SSL выберите Весь сайт, сохраните.
Это же действие можно сделать иначе, в файле configuration.php установить значение:
public $force_ssl = 2;
Изменения в файле configuration.php корневой папки сайта
Найдите следующую строку и пропишите адрес вашего сайта по примеру:
public $live_site = '';
Заменить:
public $live_site = 'https://domain.com.ua';
Изменения в файле .htaccess
Затем откройте файл .htaccess и добавьте следующий код в конец файла:
RewriteEngine On
RewriteCond %{HTTPS} OFF
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
Сохраните и проверьте правильно ли все работает.
Решение проблем после перехода на HTTPS
Если в консоли браузера высвечиваются ошибки mixed content, добавьте в конец файла configuration.php строчку:
$_SERVER['HTTPS'] = 'on';
Добавьте в .htaccess строки:
RewriteCond %{HTTP:X-HTTPS} ^1$
RewriteRule .? - [E=HTTPS:on]
После каждого обновления конфигурации сайта, добавленная строка в файл configuration.php будет перезаписана. Поэтому нужно будет добавлять снова.
В настройках таких компонентов, как VirtueMart, есть еще свои настройки по включению https (Компоненты → VirtueMart → Настройки → Магазин).