Що робити, якщо після переходу на HTTPS сайт виглядає зламаним?
Типова ситуація: ви купили SSL-сертифікат, налаштували nginx, https:// працює — але в браузері висить значок «небезпечно», половина картинок не завантажується, кошик перестав працювати. Причина майже завжди одна — mixed content (змішаний контент). Ресурси — скрипти, стилі, зображення — продовжують завантажуватися по HTTP, тому що в базі даних Бітрікс залишилися старі абсолютні посилання. Ми налаштовуємо SSL для сайтів на 1С-Бітрікс уже понад 7 років, виконали понад 50 проєктів — і знаємо, як прибрати ці проблеми за кілька годин. Наприклад, в одному з проєктів з каталогом із 30 000 товарів ми за один день повністю усунули mixed content, що підвищило швидкість завантаження на 40% і прибрало попередження браузера. Отримайте безкоштовну оцінку вашого проєкту — зв'яжіться з нами.
Розв'язувані проблеми
- Mixed content після встановлення HTTPS — найчастіша проблема. Навіть один HTTP-запит на сторінці змушує браузер вважати з'єднання небезпечним.
- Некоректні редиректи — багато хто забуває налаштувати 301 редирект з HTTP на HTTPS, що призводить до дублів сторінок і падіння SEO-позицій.
- Збій бітрікс-компонентів — компоненти кошика, форми зворотного зв'язку, AJAX-запити можуть використовувати захардкоджені HTTP-URL, перестають працювати після включення HTTPS.
Чому виникає mixed content?
Mixed content — наслідок того, що в системі залишилися посилання, що починаються на http://. У Бітрікс це може бути:
- В інфоблоках — тексти елементів і властивостей
- У налаштуваннях компонентів — явно прописані URL
- У файлах шаблонів — статичні посилання на зображення
- У системних налаштуваннях — неправильно вказаний протокол сайту
Для виявлення таких посилань ми використовуємо SQL-запити до таблиць b_iblock_element і b_iblock_element_property. Приклад:
SELECT ID, DETAIL_TEXT FROM b_iblock_element WHERE DETAIL_TEXT LIKE '%http://example.com%' LIMIT 100; Після заміни всіх входжень на https:// — mixed content зникає.
Як ми налаштовуємо SSL для Бітрікс: покроковий план
- Вибір сертифіката — для більшості проєктів підходить безкоштовний Let's Encrypt (автоматичне продовження). Якщо потрібна підтримка піддоменів (wildcard) або підвищена валідація організації (OV/EV) — використовуємо комерційні сертифікати Sectigo або DigiCert.
- Встановлення на сервер — через certbot (для nginx) або вручну (для Apache). Налаштовуємо HTTP->HTTPS редирект на рівні веб-сервера.
- Налаштування Бітрікс — змінюємо протокол у налаштуваннях сайту, чистимо кеш, перевіряємо файли
dbconn.phpі.settings.phpна захардкоджені HTTP-адреси. - Міграція контенту — масова заміна http:// на https:// у базі даних. Для цього використовуємо скрипти або модулі з Маркетплейсу.
- Тестування — прогон сторінок через сервіси перевірки mixed content, перевірка форм і кошика.
Нижче — таблиця порівняння типів сертифікатів:
| Параметр | Let's Encrypt | Комерційний (Sectigo, DigiCert) |
|---|---|---|
| Вартість | Безкоштовно | Платний (залежить від провайдера) |
| Термін дії | 90 днів (автопродовження) | 1-2 роки |
| Підтримка wildcard | Є (через DNS-challenge) | Є |
| Валідація | Тільки доменна (DV) | DV / OV / EV |
| Автоматизація | Повна (certbot) | Потребує ручного оновлення |
Випадок із практики
Інтернет-магазин на редакції «Бізнес» — після встановлення Let's Encrypt браузер показував попередження про небезпечну сторінку. Причина виявилася в компоненті sale.order.ajax: у шаблоні був явно прописаний http://example.com/ajax.php. Додатково — 150 банерів у b_iblock_element_property містили HTTP-посилання. Ми знайшли всі входження через SQL, замінили на відносні шляхи (ajax.php) та HTTPS-версії для зовнішніх ресурсів. Після цього сертифікат став коректно працювати. На весь проєкт пішло 4 години, включаючи тестування на 20 критичних сторінках.
Які помилки виникають при самостійному налаштуванні SSL?
| Помилка | Наслідок | Рішення |
|---|---|---|
| Забули змінити SITE_PROTOCOL | Адмінка працює по HTTP | Встановіть https у налаштуваннях сайту |
| Не налаштований редирект HTTP→HTTPS | Дуби сторінок, падіння SEO | Налаштуйте 301 редирект у конфігу веб-сервера |
| Абсолютні посилання в шаблонах | Mixed content | Замініть на відносні або протоколо-незалежні |
| Не перевірені AJAX-виклики | Неробочі форми | Використовуйте відносні URL у JS-файлах |
Процес роботи
- Аналітика — аудит поточної конфігурації сервера та Бітрікс, виявлення mixed content.
- Проєктування — вибір типу сертифіката, план міграції посилань.
- Реалізація — встановлення сертифіката, налаштування веб-сервера, правка конфігів Бітрікс.
- Тестування — перевірка всіх сторінок, функціоналу, SSL Labs.
- Деплой — викатка на прод, моніторинг логів 2 тижні.
Терміни орієнтовно
Встановлення сертифіката та базове налаштування — від 2 до 3 годин. Повний аудит та усунення mixed content на каталозі до 50 000 товарів — до 1 робочого дня. Якщо сайт більший — термін збільшується пропорційно обсягу даних. Зв'яжіться з нами, щоб отримати точну оцінку.
Типові помилки при самостійному налаштуванні
- Забувають змінити SITE_PROTOCOL у налаштуваннях сайту — інакше адмінка буде працювати по HTTP.
- Не прописують HTTP-редирект — забувають, і сайт доступний за двома протоколами.
- Залишають у шаблонах абсолютні посилання — краще використовувати відносні шляхи.
- Не перевіряють AJAX-виклики — вони часто захардкоджені в JS.
Якщо ви зіткнулися з будь-якою з цих проблем — замовте консультацію. Ми допоможемо налаштувати SSL правильно та безболісно для вашого проєкту.







