Установка SSL сертификата на Joomla сайт: переходим на https протокол
Я не знаю, зачем нужен SSL сертификат на Joomla сайте вам. Может у вас Интернет магазин и/или посетители оставляют на сайте свои платежные реквизиты, или вы, как я, заинтересованы в более высоких позициях в выдаче. Причина получить зеленый замок лояльности в адресной строке браузера рядом со своим сайтом может быть любая. Причина получения SSL влияет только на тип вашего сертификата и не важна для этой статьи. Для этой статьи считаем, что вы получили SSL сертификат для вашего домена, на котором создан сайт Joomla.
Кстати, не нужно путать SSL сертификат от центра сертификаций и VPN-сервисы. Оба понятия имеют отношения к безопасности, только SSL сертификат показывает браузеру, что ваш сайт (вернее домен) безопасен, а дешёвый VPN сервис позволяет защитить свою приватность и работать в Интернет анонимно.
Как дела обстоят на практике
Есть 4 типа сертификатов SSL для сайтов:
- Проверка домена (DV). Выдаются частным лицам, есть бесплатные варианты;
- Проверка домена и собственника домена (IV);
- Проверка домена и фирмы (OV);
- Расширенная проверка организации (EV). Лучший вариант для интернет-магазина.
- Для кириллического домена нужно искать сертификат типа IDN.
Чтобы получить или купить SSL сертификат, можно воспользоваться следующими практическими вариантами:
- Бесплатно. Если ваш хостер настолько хорош, что работает с бесплатным центром сертификации Let’s Encrypt и предлагает бесплатно получить SSL сертификат от этого центра.
- Бесплатно. Зарегистрировавшись и получить сертификат DV Free на сайта SmartSSL.
- Платно, через, панель своего хостинг провайдера. Если ваш хостер настолько предусмотрителен, что создал дополнительную услугу, по покупке сертификата. Стоимость таких сертификатов от 500 рублей в год, на домен+www, и его покупка прописана на хостинге.
- Платно на стороне. Вы можете купить сертификат SSL в специальных центрах сертификации и обратиться к хостеру для его подключения. Лучше сначала спросить у хостера, а потом покупать.

Примечание: Так называемые самоподписные сертификаты не являются для браузеров безопасными. При их использовании и переходе на протокол HTTPS вы сами «пометите» свой сайт, красной меткой, как ненадежный.
Подготовительные работы перехода на https протокол на Joomla сайте
Итак, у вас есть сертификат безопасности SSL, отличный от самоподписного. Не важно, подключили вы его бесплатно на хостинге или имеет два ключа безопасности, для перевода сайта Joomla на безопасный протокол HTTPS нужно:
- Сделайте резервную копию сайта (сайт+ база данных);
- Включите для домена SSL кодирование и подключите к домену сертификат безопасности. Пока, не делайте переадресацию с протока http на https;
- Проверьте доступность сайта по протоколам http и https. По https вы должны видеть сайт, а не пустую заставку.
Настройка Joomla сайта для работы с SSL
Что значит корректный переход на новый протокол https? Это значит, что все страницы вашего сайта, включая все ссылки, картинки, ссылки сторонних расширений, формы должны быть доступны и по протоколу https.
Во-первых, в настройках сайта Joomla, есть кнопка активации SSL режима. Её нужно включить. Вкладка административной панели: Общие настройки >>Сервер.

Во-вторых, если вы вставляли на сайт картинки используя «Медиа менеджер» сайта, то в нем картинки вставляются с относительным адресом и переход на протокол https их не закроет.
В-третьих, все внутренние ссылки, должны быть также относительными или прописанными с протоколов https.
В-четвертых, все внешние ссылки должны поддерживать протокол https и вам нужно прописать в них, вместо протокола http протокол https. Если внешний источник их не поддерживает, их нужно убрать или не обращать внимание на предупреждение браузера.
В-пятых, во всех сторонних расширениях сайта нужно включить режим поддержки SSL (если есть такой режим).
- Велика вероятность (для примера), что ваш шаблон подгружает через скрипты сторонние стили, а значит в скрипте, указан такой вызов:
- Доложно быть так
После выполнения всех перечисленных настроек, открываем сайт по протоколу https. Это значит, в адресной строке браузера пишем полностью:
Что делать если браузер показывает сайт ненадежным
Если вам удалось, открыть свой сайт по протоколу https, но вы видите, предупреждение браузера о ненадежности сайта или браузер блокирует часть скриптов сайта, это значит, что браузер видит «Mixed content», смешанное содержание на странице сайта.
Для проверки «Mixed content» лучше использовать браузер Chrome. На странице сайта правой кнопкой открываете вкладку «Посмотреть код». Вверху вкладка «Security», под предупреждением Mixed content ссылка на список ошибок или значок ошибок в правом верхнем углу.

В списке ошибок видим ошибки в url, которые нужно исправить. Велика вероятность, что под смешанное содержание попадут: некоторые видео, некоторая реклама, сторонние картинки, и другие коды включающие сторонние, небезопасные url.
Примечание: Все вышеперечисленные настройки можно отнести к технической части перехода на протокол https. Есть вторая часть перехода, SEO настройка сайта после перехода на https.
Оптимизация перехода на протокол HTTPS Joomla сайта
По SEO переход на протокол https сродни переезду на новый домен. Меняя протокол сайта, вы меняет все его ссылки. Это значит, что все страницы вашего сайта, которые были в выдаче, по протоколу http, из индекса выпадут.
Минимизировать потери выдачи, можно, сделав следующие шаги оптимизации:
301 redirect
Если сайт работает на сервере в режиме Apache, то в файле .htaccess, который должен быть у вас в корне сайта, пишем две директивы переадресаций.
Если сайт работает на сервере в режиме Nignx, то ищем кнопку переадресаций из директивы HTTP в директиву HTTPS. Если такой кнопки нет, пишем хостеру с просьбой помощь.
Если не помогают директивы в файле .htaccess, пишем в техподдержку хостера.
Для поисковиков Google и Bing
Для этих поисковиком, в панелях инструментов для вебмастеров, добавляем новый сайт с https и сообщаем о новой карте сайтов с https. Если вы предварительно включили 301 redirect в этих поисковиках больше ничего делать не нужно.
Для поисковика Яндекс
Сначала, в файле robots.txt вашего сайта, меняем директиву Host и пишем новое основное зеркало сайта, полностью: https://site.exe или https://www.site.exe.
В инструментах вебмастера Яндекс, на вкладке «Инструменты» проверяем файл robots.txt, ошибок быть не должно.
Там же, отправляем новую карту сайта sitemap с https.

Там же, на вкладке «Переезд сайта», сообщаем о начале использования протокола HTTPS. Это можно не делать, если вы прописали новую директиву Host (лучше сделать).



Примечание: если у вас крутой трафик и вам «ну очень жаль» трафик, вам можно попробовать следующую схему оптимизации безопасного протокола:
- Не делайте переадресации http на https нигде. Сайт будет доступен по двум адресам.
- Добавьте на Яндекс новый сайт с https.
- Ждите его полной индексации (4-6 месяцев).
- Теперь сделайте переадресацию http на https.
Есть мнение, что на новом интерфейсе Яндекс (новом алгоритме) можно сразу сделать переадресацию, и трафик плавно перетечет на новый протокол. Похоже это так, я не вижу потери трафика, скорее наоборот. Зато что вы точно потеряете с переходом на https это ТИЦ. С 301 редиректом, он обнулится на обеих сайтах (http и https), до следующего апдейта ТИЦ.
Выводы
Установка SSL сертификата на Joomla сайт и переход на https протокол, дело серьезное, в некоторых вариантах затратное. Поэтому, начать переход на безопасный протокол, серьезного проекта, лучше с общения с техподдержкой вашего хостера. Если они не могут вам помочь, искать альтернативный хостинг с вразумительной поддержкой SSL сертификации.
Статьи по теме безопасность
- Как изменить префикс базы данных Joomla 3
- 5 простых шагов защиты сайта Joomla 3
- Безопасность Joomla сайта и почему она важна
- Защита сайта от ботов
- Защита сайта от вирусов
Joomla — переход на https
В Joomla, перейти на https-соединение довольно просто.
Но кроме этого нужно ещё сообщить об этом Яндексу, чтобы он тоже знал.
Но и здесь, всё делается без проблем.
С чего начать?
Первое что нужно сделать, это подумать а стоит ли переходить на https.
Оно вам нужно?
Если на вашем сайте нет ни авторизации, ни оплаты товаров и других функций, которые требуют ввода персональных данных, то https вам точно не нужен.
Протокол https обеспечивает защищённое соединение и затрудняет перехват личных данных пользователей вашего сайта.
Вот и всё.
Второй шаг.
Определиться с сертифкатом безопасности (SSL) и получить его.
Они бывают разные, для доменов, для почты, с поддержкой кириллических доменов, с поддержкой под-доменов, для физ.лиц и т.д.
Подробнее можно посмотерть тут — reg.ru
Лично я использую сертификаты от LetsEncrypt. Они совершенно бесплатны и обеспечивают базовый уровень защиты.
Что мне вполне достаточно.
Такие сертификаты доступны на хостингах с панелью управления ISP Manager 5, раздел SSL сертификаты.
Я использую хостинг от FirstVDS.

Возможно эти сертифкаты доступны и на других хостингах, это лучше уточнить в технической поддержке хостинга.
Если LetsEncrypt не хотите, то нужно купить платный SSL сертификат и установить его на хостинг.
Делать это самому не рекомендую, на это есть техническая поддержка хостинга.
Попросите, вам всё установят.
Третий шаг.
После установки SSL сертификата на хостинг, когда он станет работоспособен, можно переключать режим работы сайта на SSL.
В Joomla это делается в Система — Общие настройки. Вкладка Сервер.
Ставим значение «Весь сайт».

Четвёртый шаг.
Сейчас нужно направить все запросы с http на https.
Это можно сделать через htaccess или в настройках www-домена (зависит от хостинга).

Если у домена нет таких настроек, то здесь тоже не нужно экспериментировать, просто напишите в техподдержку хостинга и попросите их дать вам код для htaccess, который будет перенаправлять все запросы на https.
У меня на сервере в htaccess работает такой код:
RewriteEngine On
RewriteCond % ^80$ [OR]
RewriteCond % =on
RewriteRule ^(.*)$ https://kasyanov.info/$1 [R=301,L]
Но это всё индивидуально для каждого сервера, лучше уточняйте в техподдержке, на это она и техподдержка)
Скажу только что рекомендуется делать 301 редирект. С http на https.
Пятый шаг.
Надеюсь что 4-ый шаг был для вас простым.
Теперь проверяем как работает сайт. Заходим на сайт с другого браузера или чистим кэш в своём текущем.
Пробуйте зайти на сайт с http и посмотрит как вас перенаправит на https.
И на всех страницах сайта, в адресной строке, должен быть показан замочек, который говорит о защищённом соединении.


Если вы видите замочек и сайт работает нормально, то переход на SSL можно сказать завершён.
Теперь все переходы с поисковых систем будут направляться на https.
URL адреса не изменяются, просто добавляется https.
Если же вы видите простое изображение земного шара или открытый замок.

Значит что-то на вашем сайте загружается по обычному протоколу http и это нужно исправить.
Что это может быть?
- шрифты загружаются по http
- какая то форма может грузиться по обычному протоколу
- изображения на странице также могут загружаться по обычному http соединению
- виджет стороннего сервиса и т.д.
Нужно посмотреть исходный код и найти загрузку элемента по http.
Также это можно сделать через консоль.
Клик правой кнопкой мыши по любому элементу на странице -> из контекстного меню выбираем «Исследовать элемент» и переходим на вкладку Консоль.
Там будет написано что-то типа: Mixed content (смешанный контент) и будет показан адрес с которого идёт загрузка «небезопасного» содержимого.
У меня, например, грузилась форма подписки с http.
Нашёл этот модуль и изменил на https — всё стало отлично.

Если сами не сможете найти, напишите мне, помогу.
И ещё.
Расскажите Яндекс.Вебмастеру что вы переехали на https.
Это можно сделать в Индексирование — Переезд сайта.
Нужно поставить галочку «Добавить HTTPS» и отправить заявку.

Хоть Яндекс и говорит что не несёт ответственности за количество проиндексированных страниц и позиции сайта, но как правило переход на https проходит безболезненно.
По крайней мере у меня всегда всё было в порядке.
Через несколько недель в результатах выдачи появлялись ссылки на мой сайт уже с https.
P.S.: Если в Яндексе что-то пойдёт не так, то вы можете задать вопрос в их тех.поддержку (поставив галочки на всех пунктах).
Они отвчают не так быстро как хотелось бы, но отвечают)
Желаю вам успешного перехода на SSL.
Если он оправдан, то не бойтесь — переезжайте.
Установка SSL-сертификата в Joomla (использование https-протокола)

Мы настоятельно рекомендуем установить и использовать SSL (англ. secure sockets layer) на сайте Joomla, если у Вас интернет-магазин или сайт в котором хранятся или обрабатываются персональные данные, — потому что шифрование необходимо для того, чтобы ваш пароль и другие конфиденциальные данные не попали в чужие руки.
Для чего нужен переход на https-протокол?
Переход на https-протокол необходим по нескольким причинам. Во-первых, это необходимо для интернет-магазинов с подключёнными платёжными системами и сайтов, в которых хранятся и обрабатываются персональные данные. Во-вторых, поисковые системы отдают наибольшее предпочтение защищённым сайтам с установленными SSL-сертификатами. В третьих, Ваши потенциальные клиенты, увидев окно с требованием об установке сертификата, могут просто уйти с сайта.
Какой порядок действий по подключению SSL-сертификата?
- Заказать и установить сертификат на хостинге. Для большинства сайтов вполне достаточно использование бесплатного сертификата SSL Let’s Encrypt. К тому же, на большинстве хостингов, заказ и установка сертификатов, являются бесплатной процедурой. Для этого, лишь, необходимо сделать запрос в службу технической поддержки хостинга и следовать инструкциям технического специалиста.после того, как вы получите уведомление «SSL-сертификат выпущен и установлен» — Вы можете приступить непосредственно к настройкам сайта;
- Полная резервная копия сайта. Перед выполнением любых технических работ на сайте, всегда рекомендуем выполнять полное резервное копирование. Одним из самых удобных инструментов для Joomla является компонент Akeeba Backup. Если это расширение ещё не установлено на сайте, обязательно рекомендуем его установить и использовать.
- Включение SSL-сертификата на сайте Joomla. Это делается в Панели администратора → Система → Общие настройки (с переходом во вкладку «Сервер» необходимо выбрать вариант «Весь сайт»):

- Модификация файла configuration.php — изменение строки $ live_site до значения public $live_site = ‘https://ваш_сайт’;
- Модификация файла .htaccess. Добавляем значения:

- Редактирование файла robots.txt. В директивах HOST и SITEMAP необходимо указать https вместо http.

- Проверить html-шаблон сайта и подключаемые стили. В случае, если в теге шаблона сайта используются стили или подключаются ресурсы по абсолютному адресу, то необходимо указать https вместо http.

- Тестирование и отладка. Самый важный этап, который некоторые разработчики исключают из регламента предоставления услуги. По завершению всех работ необходимо осуществить тестирование всех ключевых функций сайта – основные разделы, работа каталога, формы регистрации и обратной связи и других специфических функций.

В адресной строке сайта, должна появилась заветная буква «s» в адресе сайта!
Стоимость и сроки установки сертификата на сайт зависят от используемого хостинга и «конструкции» сайта Joomla.
Как настроить HTTPS для Joomla

Продолжаем тему перехода на HTTPS для разных CMS. В этой части рассмотрим, как правильно настроить работу Joomla 3 по HTTPS.
Перед началом выполнения данной инструкции у вас должен быть установлен SSL сертификат для вашего домена. Также рекомендуем создать резервную копию сайта и базы данных.
1. Включение HTTPS в админ-панели Joomla
Вам нужно авторизоваться в админ-панели сайта по ссылке вида http://site.com/administrator/, после чего перейдите в раздел Система — Общие настройки.

Далее нажмите вкладку Сервер, в пункте Включить SSL выберите Весь сайт и сохраните.

2. Изменения в configuration.php
Откройте файл configuration.php в корневой папке сайта (по FTP или через файловый менеджер панели хостинга) и найдите в нем строку с параметром $live_site. Пропишите в эту строку имя вашего сайта с https:
public $live_site = 'https://site.com';
И сохраните файл.
Возможно, у вас в целях безопасности отключена возможность записи в конфигурационный файл. Тогда перед началом редактирования нужно установить для него права доступа 644.
3. Изменения в .htaccess
Установите перенаправление всех посетителей на HTTPS, добавив в файле .htaccess строки:
RewriteEngine On RewriteCond % OFF RewriteRule (.*) https://%%
4. Решение проблем после перехода на HTTPS
Если после выполнения вышеописанных действий сайт не отображается корректно или вы видите в консоли браузера ошибки mixed content, попробуйте выполнить следующее:
- Добавьте в configuration.php в конец файла строчку
$_SERVER['HTTPS'] = 'on';
После каждого обновления конфигурации эта строка будет перезаписана, потому нужно будет добавлять ее снова.
- Добавьте в .htaccess строки:
RewriteCond % ^1$ RewriteRule .? - [E=HTTPS:on]
- В настройках таких компонентов, как VirtueMart, есть свои настройки по включению https. Для VirtueMart перейдите в раздел Компоненты — VirtueMart — Настройки — Магазин и включите опцию Включить SSL для важных частей сайта.
- Исправьте оставшиеся ссылки вручную. Увидеть какие элементы загружаются по http вы можете в консоли браузера

Перенесите свой Joomlа сайт на Hostpro удобно и безопасно. Процедура переноса бесплатная и занимает минимум времени. Все, что вам нужно сделать — это заполнить заявку. Также вы можете ознакомиться с тарифами Joomlа хостинга на нашем сайте и выбрать тот, который подходит именно вам. Если у вас остались вопросы, вы можете обратиться к нашей поддержке и получить надлежащую помощь 24/7.
Категории
- SSL сертификаты (25)
- VPS / выделенные сервера (5)
- Доменные имена (18)
- Защита и безопасность (4)
- Инструкции (29)
- Конструктор сайтов SitePro (1)
- Панели управления (9)
- Партнёрство (2)
- Хостинг (41)
Статьи
- Настройка уведомлений об услугах Хостинга и доменов Подробнее
- Что такое зеркальные домены? Подробнее
- Работа с базой данных MySQL в cPanel Подробнее
- Как пользоваться услугой бэкордер доменов? Подробнее
- Как подключить к сайту Cloudflare Подробнее
