SSL-сертифікат на хостингу: як встановити HTTPS і не зламати сайт у процесі
Уявіть: ви заходите в кав'ярню, а бариста голосно зачитує ваше замовлення, номер картки і PIN-код усім присутнім. Саме так виглядає ваш сайт без SSL-сертифіката - кожен байт інформації між браузером і сервером летить відкритим текстом. Google Chrome вже кілька років позначає такі сайти як «Не захищено», і якщо ви досі ігноруєте цей червоний трикутник - ви втрачаєте і відвідувачів, і позиції у пошуку. Але встановити SSL не так просто, як клікнути одну кнопку. Є нюанси, про які хостинг-провайдери мовчать, а туторіали з 2019 року вже безнадійно застаріли.
Цей гайд - для тих, хто хоче зробити все правильно з першого разу. Без зламаних редіректів, без mixed content, без паніки о другій ночі.
Що таке SSL і чому без нього ваш сайт - голий у натовпі
SSL (Secure Sockets Layer) - це протокол шифрування, який створює захищений тунель між браузером відвідувача і вашим сервером. Технічно зараз усі використовують TLS (Transport Layer Security) - наступника SSL, але назва «SSL-сертифікат» прижилася і нікуди не дінеться.
Без SSL кожен пароль, кожне повідомлення у формі зворотного зв'язку, кожен номер телефону передається як відкрита листівка. Будь-хто між вашим відвідувачем і сервером - провайдер, адміністратор Wi-Fi у кафе, зловмисник - може перехопити ці дані.
Але справа не лише в безпеці. Ось що ви отримуєте з SSL:
- SEO-бонус - Google офіційно підтвердив, що HTTPS - фактор ранжування ще з 2014 року
- Довіра користувачів - замочок у адресному рядку підвищує конверсію на 17-30% за даними GlobalSign
- Сумісність - HTTP/2 і HTTP/3 працюють тільки через HTTPS, а це швидкість завантаження
- Відповідність законам - GDPR, PCI DSS та інші регуляції вимагають шифрування персональних даних
Якщо коротко: сайт без SSL у 2025 році - це як магазин без дверей. Технічно працює, але клієнти обходять стороною.
Типи SSL-сертифікатів: який обрати і не переплатити
Перш ніж щось встановлювати, треба зрозуміти, який сертифікат вам потрібен. Тут багато хто помиляється - або купує дорогий EV-сертифікат для блогу про котів, або ставить безкоштовний Let's Encrypt на інтернет-банк.
| Тип сертифіката | Валідація | Ціна (на рік) | Для кого | Час видачі |
|---|---|---|---|---|
| DV (Domain Validation) | Перевірка домену | $0-15 | Блоги, лендинги, портфоліо | 5-10 хвилин |
| OV (Organization Validation) | Перевірка компанії | $50-200 | Корпоративні сайти, SaaS | 1-3 дні |
| EV (Extended Validation) | Розширена перевірка | $100-500+ | Банки, платіжні системи | 3-7 днів |
| Wildcard | DV або OV | $50-300 | Сайти з піддоменами | Залежить від типу |
Для 90% сайтів DV-сертифікат цілком достатній. Браузер показує той самий замочок, шифрування ідентичне. Різниця лише в тому, яку інформацію про власника можна побачити в деталях сертифіката.
«Рівень шифрування не залежить від типу сертифіката. DV за $0 і EV за $500 використовують однакові алгоритми. Різниця - виключно в рівні перевірки особи власника.» - Scott Helme, дослідник веб-безпеки, засновник securityheaders.com
Окремо про Let's Encrypt - безкоштовний центр сертифікації, який видає DV-сертифікати. На ньому працює понад 300 мільйонів доменів. Єдиний мінус - сертифікат потрібно оновлювати кожні 90 днів, але більшість хостингів автоматизують це через Certbot або вбудовані інструменти.
Покрокова установка SSL через cPanel: від нуля до замочка
Найпоширеніший сценарій - ви на shared-хостингу з cPanel. Давайте пройдемо весь шлях.
- Перевірте, чи підтримує ваш хостинг безкоштовний SSL. Увійдіть у cPanel, знайдіть секцію «Security» і відкрийте «SSL/TLS Status». Якщо бачите AutoSSL або Let's Encrypt - ви в грі. Більшість сучасних хостингів (Hostinger, SiteGround, A2 Hosting, українські Ukraine.com.ua, Mirohost) пропонують це за замовчуванням.
- Активуйте AutoSSL. Натисніть «Run AutoSSL» - система сама згенерує сертифікат, верифікує домен і встановить його. Зазвичай це займає 2-10 хвилин.
- Перевірте результат. Відкрийте ваш сайт через https:// - повинен з'явитися замочок. Натисніть на нього і переконайтеся, що сертифікат виданий на ваш домен і термін дії коректний.
- Налаштуйте примусовий редірект з HTTP на HTTPS. Це критичний крок, який багато хто пропускає. Відкрийте файл
.htaccessу кореневій папці сайту і додайте:RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] - Оновіть URL сайту в CMS. У WordPress: Налаштування → Загальне → змініть обидві адреси на https://. У інших CMS - аналогічно.
- Перевірте наявність mixed content. Відкрийте DevTools (F12) → Console і шукайте помилки типу «Mixed Content». Це ресурси (картинки, скрипти, стилі), які все ще завантажуються через HTTP.
Якщо ваш хостинг не підтримує AutoSSL - це серйозний привід задуматися про переїзд. У 2025 році це мінімальний стандарт.
Mixed content: невидимий ворог, який ламає ваш замочок
Ви встановили SSL, налаштували редірект, відкриваєте сайт - а замочка немає. Або ще гірше: замочок з жовтим трикутником. Знайоме? Вітаю, у вас mixed content.
Mixed content - це коли сторінка завантажена через HTTPS, але окремі ресурси (зображення, шрифти, JavaScript-файли) тягнуться через незахищений HTTP. Браузер бачить це і панікує.
Mixed content буває двох типів, і один з них значно небезпечніший за інший:
- Passive mixed content - зображення, відео, аудіо через HTTP. Браузер завантажить, але покаже попередження.
- Active mixed content - скрипти, стилі, iframe через HTTP. Браузер заблокує їх повністю. Ваш сайт може просто «розсипатися».
Як це виправити? Є швидкий і правильний шлях.
Швидкий шлях - додати у <head> вашого сайту мета-тег:<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
Цей рядок каже браузеру автоматично замінювати http:// на https:// для всіх ресурсів. Працює у 95% випадків.
Правильний шлях - знайти всі HTTP-посилання у базі даних і шаблонах та замінити їх. Для WordPress є плагін Better Search Replace: шукаєте http://vash-domen.com і замінюєте на https://vash-domen.com. Зробіть бекап бази перед цим. Завжди. Серйозно.
Після виправлення перевірте сайт через Why No Padlock або JitBit SSL Checker - ці інструменти просканують кожну сторінку і покажуть, де залишилися проблемні ресурси.
Редіректи, HSTS і тонкощі, про які мовчать базові гайди
Ок, SSL встановлено, mixed content виправлено. Все? Ні. Є кілька речей, які відрізняють аматорську настройку від професійної.
301 редірект - не єдине рішення. Так, редірект з HTTP на HTTPS обов'язковий. Але між першим HTTP-запитом і редіректом є вікно вразливості - атака «man-in-the-middle» може перехопити саме цей перший незахищений запит. Рішення - HSTS (HTTP Strict Transport Security).
Додайте у конфігурацію сервера заголовок:Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
Що він робить? Каже браузеру: «Наступні 365 днів навіть не намагайся звертатися до цього домену через HTTP. Відразу переходь на HTTPS.» Після першого візиту браузер запам'ятає це правило і більше жодного незахищеного запиту не буде.
Ще кілька важливих деталей:
- Оновіть sitemap.xml - усі URL повинні бути з https://
- Оновіть robots.txt - вкажіть правильний шлях до sitemap
- Перевірте canonical-теги - дублі з http:// і https:// вбивають SEO
- Повідомте Google - додайте HTTPS-версію сайту в Google Search Console як окрему властивість
- Оновіть зовнішні сервіси - Google Analytics, рекламні пікселі, CDN - все має працювати через HTTPS
Я бачив сайти, які після переходу на HTTPS втрачали 30-40% трафіку на тижні. Не через сертифікат - через те, що забули про canonical або створили петлю редіректів. Перевіряйте кожен пункт.
Автоматичне оновлення і моніторинг: щоб не прокинутися з протухлим сертифікатом
Let's Encrypt видає сертифікати на 90 днів. Комерційні - зазвичай на рік. І в обох випадках є ризик забути про оновлення. Знаєте, що станеться, коли сертифікат протухне? Браузер покаже повноекранне попередження: «Ваше з'єднання не є приватним». 95% відвідувачів натиснуть «Назад» і ніколи не повернуться.
Як цього уникнути:
- Переконайтеся, що автооновлення працює. На хостингу з cPanel перевірте AutoSSL у розділі SSL/TLS. На VPS переконайтеся, що Certbot додав cron-завдання:
certbot renew --dry-runпокаже, чи все налаштовано. - Налаштуйте моніторинг. Безкоштовні сервіси UptimeRobot, StatusCake або спеціалізований SSLMate Cert Spotter повідомлять вас за 14-30 днів до закінчення терміну.
- Тримайте контакти актуальними. Центри сертифікації надсилають нагадування на email. Якщо ваша пошта на тому ж домені, а сертифікат уже протух - ви листа не отримаєте. Класична пастка.
Ще одна порада з особистого досвіду: ведіть простий документ - табличку, де записано для кожного домену тип сертифіката, дату видачі, дату закінчення і спосіб оновлення. Коли у вас 3-5 проєктів, це рятує від хаосу.
Після SSL: що перевірити і куди рухатися далі
Сертифікат встановлено, редіректи працюють, mixed content відсутній, HSTS увімкнено. Фінальний чек-лист:
- Відкрийте SSL Labs і введіть свій домен. Ціль - оцінка A або A+. Якщо бачите B або нижче - у вас проблеми з конфігурацією (слабкі шифри, застарілі протоколи).
- Перевірте швидкість сайту через PageSpeed Insights - HTTPS не повинен суттєво сповільнити завантаження. Якщо сповільнив - щось не так з TLS handshake або відсутній HTTP/2.
- Промоніторте індексацію в Google Search Console протягом 2-3 тижнів після переходу. Переконайтеся, що Google переіндексував HTTPS-версії сторінок.
SSL-сертифікат - це не разова дія, а елемент інфраструктури, який потребує уваги. Як масло в двигуні: залили і забули - через пів року отримуєте катастрофу.
А тепер чесне запитання: коли ви востаннє перевіряли, що саме написано в деталях вашого SSL-сертифіката? Не просто замочок у браузері - а реальний термін дії, алгоритм шифрування, чи покриває він піддомени? Якщо відповідь «ніколи» - саме час відкрити нову вкладку і подивитися. Можливо, ваш «захист» давно перетворився на ілюзію безпеки.