Перехід із HTTP на HTTPS на Joomla! сайті

Як вам відомо https являється безпечним протоколом передачі даних. І пошукові системи все більше віддають перевагу для сайтів, які працюють по даному протоколу. Тому якщо ви до цих пір використовуєте на своєму сайті незахищений протокол http, задумайтеся про перехід.

Кожен раз все більше можна зустріти інформації проте, що браузери будуть попереджувати користувачів, що ваш сайт не захищений і може нести небезпеку кражі даних при передаванні. Скоріш за все ближчим часом всі сайти перейдуть на захищений протокол https.

Навіщо використовувати протокол https? Для того, щоб браузер передавав інформацію від користувача до сервера по захищеному протоколу в зашифрованому вигляді та гарантував, що дані (наприклад логіни та паролі) не будуть перехоплені хакерами.

Сертифікати для сайтів можуть бути різні, але це не тема даної статті.

Я, використовую хостинг Beget, який надає абсолютно безкоштовні сертифікати від Let’s Encrypt.

1. Перше, що необхідно виконати — це отримати сертифікат. Як приклад, як вже зрозуміло, буде використовуватися хостинг від Beget.

Заходимо в панель керування хостингом. Тоді у «Домени та піддомени». Напроти свого домена можна побачити «ssl».

Перехід із HTTP на HTTPS на Joomla! сайті

Перехід із HTTP на HTTPS на Joomla! сайті

Клацаємо на «ssl» і у вікні, яке відкриється натискаємо «Встановити».

Перехід із HTTP на HTTPS на Joomla! сайті

Після чого побачимо вікно із текстом, що заявка на встановлення сертифікату прийнята.

Перехід із HTTP на HTTPS на Joomla! сайті

На домені з’явиться значок, який буде означати обробку даних.

Перехід із HTTP на HTTPS на Joomla! сайті

На вашу електронну скриньку прийде лист, що ваша заявка прийнята.

Пізніше (чекати прийдеться недовго) знову прийде лист, що заявка виконана.

Перехід із HTTP на HTTPS на Joomla! сайті

Далі напроти свого домену можна побачити результат встановленого сертифікату.

Перехід із HTTP на HTTPS на Joomla! сайті

2. Далі переходимо у панель адміністрування сайту Joomla!. Відкриваємо «Загальні налаштування», переходимо на вкладку «Сервер» та напроти «Увімкнути SSL» вибираємо «Увесь» сайт».

Перехід із HTTP на HTTPS на Joomla! сайті

Перехід із HTTP на HTTPS на Joomla! сайті

Далі відкриваємо файл «configuration.php» та вписуємо свій домен: public $live_site = 'https://sovety.pp.ua';

Перехід із HTTP на HTTPS на Joomla! сайті

https://sovety.pp.ua — змініть на свою адресу.

На цьому етапі у мене вже все запрацювало.

Ось так буде виглядати захищене з’єднання у браузері Goole Chrome:

Перехід із HTTP на HTTPS на Joomla! сайті

3. Щоб не втратити трафік, коли користувачі будуть переходити на сайт по протоколу http потрібно виконати редирект на протокол https.

Тому відкриваємо .htaccess та в кінець вносимо таку інформацію:

RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://sovety.pp.ua/$1 [R=301,L]

https://sovety.pp.ua — змініть на свою адресу.

Якщо даний код не працює — спробуйте альтернативні:

RewriteEngine On # Якщо цього рядка немає вище
RewriteCond %{HTTP:X-Forwarded-Protocol} !=https
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Ще один код:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Можна додати код, який перекидає по 301 редиректу на www чи з www, в залежності від того, який вибраний вами основний домен:

## Редирект з без www на www:
RewriteCond %{HTTP_HOST} ^sitename.ru$ [NC]
RewriteRule ^(.*)$ https://www.sitename/$1 [R=301,L]

## Редирект з www на без www:
RewriteCond %{HTTP_HOST} ^www.sitename.ru$ [NC]
RewriteRule ^(.*)$ https://sitename.ru/$1 [R=301,L]

sitename.ru — змініть на свою адресу.

4. Вносимо зміни у файл robots.txt (записуємо https замість http). Відкриваємо файл та вносимо зміни у:

Host та карту сайту — Sitemap. Наприклад:

Host: https://sovety.pp.ua
Sitemap: https://sovety.pp.ua/index.php?option=com_jmap&view=sitemap&format=xml&lang=ru

https://sovety.pp.ua — змініть на свою адресу.

5. Далі потрібно внести зміни у панелі веб-майстрів Google та Яндекс.

На цьому все. Вибачайте, що коротко але я не такий великий веб майстер. Просто, можливо комусь дана стаття допоможе (мені буде приємно якщо так). Дані налаштування для вас можуть не підійти, оскільки дуже багато залежить  від хостингу, який ви використовуєте.