Skip to content

Все для WordPress, веб-розробки — і не тільки

🔧 Як виправити помилку 502 Bad Gateway у WordPress

🔧 Як виправити помилку 502 Bad Gateway у WordPress

Ви заходите на свій сайт, а там білий екран і три слова: «502 Bad Gateway». Трафік іде, але відвідувачі бачать помилку замість контенту. Продажі стоять, SEO-позиції повзуть униз, а ви гаєте час на здогадки.

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

💡 Швидкий огляд:

  • Перезавантажте сторінку та перевірте, чи не впав сервер хостингу
  • Очистіть кеш браузера та тимчасово вимкніть CDN
  • Якщо помилка зберігається, вимкніть плагіни через FTP і перевірте тему
  • Скиньте.htaccess і зверніться до хостера, коли все інше не спрацювало

Що таке помилка 502 Bad Gateway

Коли ви відкриваєте сайт, браузер надсилає HTTP-запит. На стороні сервера його зустрічає зворотний проксі (Nginx, Apache), який розподіляє запити між сервером застосунків (PHP), базою даних, вебсервером статики та CDN. Кожен вузол обробляє свою частину й повертає результат проксі-серверу. Той збирає відповідь і віддає її браузеру, сторінка завантажується.

Помилка 502 виникає, коли один із серверів у цьому ланцюжку повертає проксі-серверу некоректну відповідь. Проксі не може зібрати сторінку й показує «Bad Gateway». Браузер чесно повідомляє: шлюз між серверами отримав не те, що очікував.

Зовні помилка набуває різних форм: «502 Bad Gateway», «502 Service Temporarily Overloaded», «HTTP 502», «Nginx 502 Bad Gateway», «Помилка проксі». Суть одна, десь у ланцюжку розрив.

Чому виникає помилка 502

Причини майже завжди серверні, але іноді тригером стають ваші ж дії на сайті:

  • Перевантаження сервера. Різкий стрибок трафіку вичерпує ресурси хостингу, процеси PHP не справляються з чергою запитів.
  • Збійний плагін або тема. Код, який викликає фатальну помилку PHP, обриває відповідь сервера застосунків, проксі отримує порожнечу.
  • Проблеми з CDN. Cloudflare, KeyCDN або інший сервіс доставки контенту не може з'єднатися з вихідним сервером і повертає 502.
  • Некоректні DNS-записи. Після зміни хостингу або оновлення DNS-серверів записи ще не поширилися, сайт тимчасово недоступний.
  • Пошкоджений.htaccess. Бітий синтаксис або конфлікт правил перезапису ламає обробку запитів.
  • Вичерпано ліміт пам'яті PHP. Важкий плагін або скрипт з'їдає всю доступну пам'ять, процес падає.

Тепер покроково розберемо кожен спосіб виправлення, від найшвидшого до складніших.

Крок 1. Оновіть сторінку

Перше й найпростіше: натисніть F5 або Ctrl+R. Якщо помилка викликана короткочасним збоєм на сервері, повторний запит пройде успішно. Спробуйте відкрити сайт в іншому браузері або з мобільного інтернету — це відсікає проблему на вашому боці.

Перевірте, чи працює сайт для решти світу, через сервіс isup.me або Down For Everyone Or Just Me. Якщо сервіс показує, що сайт лежить тільки у вас, проблема локальна, ідемо далі. Якщо сайт недоступний для всіх, найімовірніше, впав сервер хостингу або ввімкнулося блокування на рівні провайдера.

Крок 2. Очистіть кеш браузера

Браузер кешує не лише зображення та стилі, а й помилкові відповіді сервера. Жорстке перезавантаження (Ctrl+F5 у Windows, Cmd+Shift+R у macOS) змушує браузер запитати сторінку заново, минаючи локальний кеш.

Якщо жорстке перезавантаження не допомогло, очистіть кеш повністю. У Chrome: Налаштування → Конфіденційність і безпека → Очистити історію → «Кешовані зображення та файли». Докладну інструкцію для різних браузерів і очищення кешу на стороні WordPress ми розбирали в окремому посібнику.

Крок 3. Тимчасово вимкніть CDN

Мережі доставки контенту на кшталт Cloudflare або KeyCDN пропускають трафік через свої сервери. Якщо на стороні CDN стався збій або налаштовано некоректне правило файрвола, відвідувачі побачать 502 навіть при повністю працюючому вихідному сервері.

Щоб перевірити цю гіпотезу, призупиніть CDN у панелі керування сервісом. Cloudflare: перейдіть у розділ Overview → Pause Cloudflare. KeyCDN та аналоги: знайдіть кнопку Disable або Pause у панелі. Після вимкнення оновіть сайт. Помилка зникла, проблема на стороні CDN, зверніться до їхньої підтримки.

Поки CDN вимкнено, сайт працює напряму з вашого хостингу, швидкість може трохи впасти, але доступність відновиться. Порівняння популярних CDN-сервісів та їх налаштування ми наводили в статті про безплатні CDN для WordPress.

Крок 4. Перевірте налаштування DNS

Після зміни хостингу або оновлення NS-записів DNS-інформація розходиться мережею від кількох годин до 48 годин. У цей період частина відвідувачів може потрапляти на старий сервер, який не відповідає або відповідає некоректно.

Якщо ви нещодавно переносили сайт, зачекайте добу, цього достатньо в більшості випадків. Додатково скиньте локальний DNS-кеш: у Windows відкрийте командний рядок і виконайте ipconfig /flushdns, у macOS, sudo dscacheutil -flushcache і sudo killall -HUP mDNSResponder. Потім перезавантажте сторінку.

Крок 5. Вимкніть плагіни через FTP

Найчастіша причина 502 на WordPress, конфлікт плагінів. Один проблемний плагін може викликати фатальну помилку PHP, яка кладе весь сайт. Оскільки адмінка WordPress при 502 недоступна, вимикати плагіни доведеться через файлову систему.

Підключіться до сервера по FTP (через FileZilla, WinSCP) або відкрийте Файловий менеджер у cPanel. Перейдіть до кореневої папки сайту (зазвичай public_html):

Файловий менеджер cPanel з кореневою папкою WordPress

Зайдіть у wp-content і знайдіть папку plugins. Перейменуйте її, наприклад, на plugins.old. Це миттєво вимкне всі плагіни разом. Дані плагінів при перейменуванні папки не видаляються, налаштування зберігаються в базі даних:

Перейменування папки plugins для масового вимкнення

Оновіть сайт. Заробив, проблема в одному з плагінів. Поверніть папці ім'я plugins, зайдіть в адмінку та вмикайте плагіни по одному, перевіряючи сайт після кожної активації. Знайшли винний плагін, видаліть його через FTP або замініть альтернативою.

Крок 6. Перевірте активну тему

Якщо вимкнення плагінів не дало результату, наступний підозрюваний, тема оформлення. Некоректний код у functions.php або конфлікт із версією PHP так само викликає фатальну помилку й 502.

Знову зайдіть у кореневу папку сайту → wp-contentthemes. Знайдіть папку з активною темою та перейменуйте її (наприклад, додайте .old у кінці):

Перейменування папки активної теми для скидання на стандартну

WordPress автоматично перемкнеться на тему за замовчуванням (Twenty Twenty-Four, Twenty Twenty-Five або аналогічну). Оновіть сайт, якщо помилка зникла, проблема в темі. Зверніться до розробника теми або відновіть резервну копію. Після діагностики поверніть папці вихідне ім'я.

Докладний алгоритм перевірки теми та пошуку конфліктного коду описано в посібнику з усунення проблем із темою WordPress.

Крок 7. Скиньте файл.htaccess

Пошкоджений .htaccess, часта, але менш очевидна причина 502. Правила перезапису, додані плагіном кешування або безпеки, можуть конфліктувати між собою. Одна синтаксична помилка в цьому файлі, і сервер повертає 502 на всі запити.

Підключіться по FTP і знайдіть файл .htaccess у кореневій папці сайту. Завантажте резервну копію на комп'ютер, потім видаліть файл із сервера. Зайдіть в адмінку WordPress, перейдіть у Налаштування → Постійні посилання та натисніть «Зберегти зміни» (нічого не змінюючи). WordPress створить новий .htaccess із чистим набором правил.

Якщо помилка з'явилася одразу після встановлення плагіна кешування (WP Rocket, W3 Total Cache, LiteSpeed Cache), перевірте розділ із правилами цього плагіна в .htaccess, зазвичай він обгорнутий у коментарі # BEGIN W3TC / # END W3TC. Видаліть цей блок, збережіть файл і оновіть сайт.

Крок 8. Зверніться до хостинг-провайдера

Жоден із попередніх кроків не допоміг, проблема, найімовірніше, на стороні сервера. Зв'яжіться з технічною підтримкою хостингу та повідомте: домен, час появи помилки, які дії ви вже виконали. Що докладніше ви опишете контекст, то швидше інженери знайдуть причину.

Попросіть перевірити логи помилок PHP і вебсервера за час, коли з'явилася 502. У логах майже завжди видно, який саме скрипт або модуль викликає збій. На недорогих тарифах shared-хостингу причиною може бути банальна нестача ресурсів: один сайт на сервері з'їдає всю пам'ять, решта отримують 502. У цьому випадку має сенс розглянути перехід на VPS або хмарний хостинг із гарантованими ресурсами.

Відеоінструкція

Наочний процес діагностики та виправлення помилки 502 від першого кроку до останнього дивіться в цьому відео:

⁉️🤔 Часті запитання

Чи може помилка 502 пройти сама собою?

Так, якщо причина в короткочасному перевантаженні сервера хостингу. Провайдери моніторять навантаження й автоматично перезапускають проблемні процеси протягом однієї-п'яти хвилин. Оновіть сторінку за пару хвилин, у половині випадків помилка зникає без жодних дій із вашого боку.

Як відрізнити 502 від інших помилок сервера?

502 Bad Gateway — це помилка на рівні проксі-сервера (Nginx/Apache), а не самого застосунку. Помилка 500 Internal Server Error означає проблему безпосередньо в коді PHP або конфігурації. Помилка 503 Service Unavailable, сервер тимчасово не приймає запити, зазвичай при плановому обслуговуванні. Помилка 504 Gateway Timeout, сервер не дочекався відповіді від upstream-сервера за відведений час. Для користувача різниця зводиться до діагностики: 500 найчастіше лагодиться правкою коду, 502, відновленням зв'язку між серверами.

Чи потрібно відновлювати сайт із бекапу при 502?

Бекап, крайній захід, а не перший крок. Перш ніж розгортати резервну копію, виконайте кроки 5, 6 і 7 із цього посібника: вимкніть плагіни, перевірте тему, скиньте .htaccess. У переважній більшості випадків 502 усувається без відновлення бекапу. Розгортайте копію, тільки якщо помилка з'явилася одразу після оновлення WordPress, плагінів або теми та відкат змін через FTP неможливий.

Чи можна запобігти появі помилки 502 у майбутньому?

Частково так. Використовуйте якісний хостинг із достатнім обсягом пам'яті PHP (рекомендований мінімум, 256 МБ). Налаштуйте моніторинг доступності сайту через UptimeRobot або аналогічний сервіс, ви дізнаєтеся про проблему раніше, ніж про неї повідомлять відвідувачі. Перед встановленням та оновленням плагінів робіть швидкий бекап. І тримайте під рукою FTP-доступ: коли адмінка лежить — це єдиний спосіб швидко вимкнути проблемний код.

Що робити, якщо нічого не допомогло?

Вісім кроків вище закривають майже всі сценарії появи 502 Bad Gateway на WordPress. Якщо ви перевірили плагіни, тему, DNS і CDN, скинули .htaccess, а помилка залишилася, проблема глибша, і без інженерів хостингу не обійтися.

Правильна послідовність економить години: спочатку виключіть локальні причини (кеш, браузер, CDN), потім серверні (плагіни, тема, .htaccess) і тільки потім ескалюйте до провайдера. Збережіть цей посібник у закладки, 502 має властивість повертатися в найневідповідніший момент, і швидкий доступ до чек-листа зекономить вам купу нервів.