502

Bad Gateway

Офіційний Коди підстатусів
наступний сервер повернув повідомлення про помилку

Специфікація коду стану HTTP 502

Код стану 502 Bad Gateway вказує на те, що сервер, виконуючи роль шлюзу або проксі-сервера, отримав невірну відповідь від вхідного сервера, до якого він звертався під час спроби виконати запит.

Джерело / Цитата з: Код статусу 502 Bad Gateway HTTP визначається розділом 6.6.3 у RFC7231.

Як згенерувати код статусу 502 за допомогою PHP?

Щоб передати на веб-сторінці код статусу HTTP 502, можна використовувати PHP-функцію http_response_code. Синтаксис наступний: http_response_code(502) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Перевірте код стану 502 HTTP

Щоб мати можливість відображати код статусу HTTP (в даному випадку 502 Bad Gateway) та іншу інформацію на стороні клієнта, необхідно відкрити консоль розробки за допомогою клавіші F12. Потім перейдіть на вкладку "Мережа". Тепер сторінку можна відкрити, веб-сайт (наприклад, index.php) повинен бути видимим у вкладці "Мережа". Його потрібно вибрати, а потім вибрати розділ Herder. Після цього користувач побачить наступний результат:

Код стану 502 Bad Gateway
Огляд
URL: https://http-statuscode.com/errorCodeExample.php?code=502
Статус: 502 Bad Gateway
Ці: Network
IP-адреса: XX.XX.XX.XX
Код стану 502 Bad Gateway

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

Код статусу HTTP 502 Bad Gateway зазвичай повертається проксі-сервером, який виступає посередником між клієнтом (наприклад, веб-браузером) і сервером, з яким клієнт хоче зв'язатися. Помилка виникає, коли проксі-сервер отримує невірну відповідь від вищого сервера. Існує кілька можливих причин цієї помилки, і нижче я розгляну деякі з найбільш ймовірних проблем і поясню, як їх можна виправити.

  • Перевантажений або недоступний висхідний сервер: Поширеною причиною коду стану HTTP 502 Bad Gateway є те, що висхідний сервер, до якого підключається проксі-сервер, перевантажений або недоступний. У цьому випадку слід переконатися, що висхідний сервер працює належним чином і має достатньо ресурсів для обробки запитів. Перевірте журнали сервера і мережеві з'єднання, щоб дізнатися, чи немає проблем. Якщо висхідний сервер перевантажений, ви можете розподілити навантаження між кількома серверами або додати додаткові ресурси, щоб вирішити проблему.
  • Мережеві проблеми: Ще однією можливою проблемою є мережеві проблеми між проксі-сервером і висхідним сервером. Це може бути нестабільне з'єднання, проблеми з DNS або налаштування брандмауера, які перешкоджають зв'язку. Перевірте налаштування мережі, щоб переконатися, що всі необхідні порти відкриті, а з'єднання стабільне. Також перевірте роздільну здатність DNS, щоб переконатися, що висхідний сервер має належну роздільну здатність. У деяких випадках може бути корисним перезапустити проксі-сервер, щоб вирішити проблеми з мережею.
  • Неправильно налаштований проксі-сервер: Неправильна конфігурація проксі-сервера також може призвести до коду стану HTTP 502 Bad Gateway. Переконайтеся, що налаштування проксі правильні і що проксі-сервер належним чином пересилає запити на висхідний сервер. Перевірте конфігураційні файли та налаштування проксі-сервера, щоб переконатися, що вони правильні. У деяких випадках також може бути корисно оновити проксі-сервер або перейти на іншу версію, щоб виправити відомі проблеми.
  • Помилкова програма на висхідному сервері: Також можливо, що на висхідному сервері встановлено несправну програму або конфігурацію, що призводить до коду стану HTTP 502 Bad Gateway. Перевірте журнали програми та сервера, щоб знайти можливі помилки або винятки. Оновіть або відремонтуйте програму, щоб виправити відомі проблеми. Також може бути корисною співпраця з розробником або системним адміністратором для аналізу та вирішення проблеми.
  • Проблеми з самим проксі-сервером: Нарешті, код стану HTTP 502 Bad Gateway також може бути викликаний проблемами з самим проксі-сервером. Це може бути пов'язано з помилками програмного забезпечення, відсутністю оновлень або апаратними проблемами. Перевірте журнали проксі-сервера на наявність повідомлень про помилки або попереджень. Оновіть проксі-сервер до останньої версії і перевірте наявність відомих проблем. У деяких випадках може знадобитися перевстановити проксі-сервер або перейти на альтернативне програмне рішення, щоб вирішити проблему.
    • Важливо відзначити, що вирішення проблеми з кодом стану HTTP 502 Bad Gateway сильно залежить від вашого конкретного середовища і конфігурації. Для діагностики та усунення проблеми може бути корисною співпраця з досвідченим розробником або системним адміністратором.

Як створити власну сторінку помилок для коду стану 502

Створити власну сторінку помилки 502 Bad Gateway відносно легко як на веб-серверах "Apache", так і на "NGINX".

Apache Webserver

Веб-сервер "Apache" є одним з найпоширеніших веб-серверів в Інтернеті. Щоб створити власну сторінку помилки 502 Bad Gateway в "Apache", необхідно внести наступні зміни в наступний файл.

File: .htaccess
ErrorDocument 502 /errors/502.html

NGINX Webserver

Подібно до веб-сервера "Apache", "NGINX" також широко використовується в Інтернеті. Щоб створити власну сторінку помилки 502 Bad Gateway в "NGINX", необхідно внести наступні зміни в наступний файл.

File: sites-enabled/default
error_page 502 /502.html;
location = /502.html {
    root /usr/share/nginx/html;
    internal;
}

Сумісність коду стану 502 з браузерами

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

Константи в мовах програмування

HttpStatusCode.BadGateway
http.StatusBadGateway
Response::HTTP_BAD_GATEWAY
httplib.BAD_GATEWAY
http.client.BAD_GATEWAY
http.HTTPStatus.BAD_GATEWAY
:bad_gateway

Коди підстатусів коду стану 502

Підкоди статусу є суто технічними і ніколи не повинні надсилатися користувачеві. Наприклад, якщо згенеровано код стану 502.1, він може бути зареєстрований, але користувачеві буде надіслано код стану 502.:
502.1 CGI application timeout
HTTP IIS, Неофіційно.
502.2 Bad gateway: Premature Exit
HTTP IIS, Неофіційно.
502.3 Bad Gateway: Forwarder Connection Error (ARR)
HTP IIS, Неофіційно.
502.4 Bad Gateway: No Server (ARR)
HTP IIS, Неофіційно.
502.5 WebSocket failure (ARR)
HTTP IIS, Неофіційно.
502.6 Forwarded request failure (ARR)
HTTP IIS, Неофіційно.
502.7 Execute request failure (ARR)
HTTP IIS, Неофіційно.

Зовнішні посилання з додатковою інформацією про код стану HTTP 502:

Цікаві меми про код статусу HTTP 502

Автор: Tony Brüser
Автор: Tony Brüser

Тоні Брюзер - захоплений веб-розробник, який має схильність до кодів стану HTTP.

LinkedInGitHub