500

Internal Server Error

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

Загальне пояснення коду стану 500

На жаль, цей текстовий блок доступний лише англійською мовою.

The HTTP 500 Internal Server Error status code occurs when the server has a problem and is unable to process the user's request. This can have various reasons, such as technical problems, overloading of the server or problems with the software that runs the server.

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

Код стану 500 Internal Server Error означає, що сервер зіткнувся з несподіваною умовою, яка не дозволила йому виконати запит.

Джерело / Цитата з: Код статусу 500 Internal Server Error HTTP визначається розділом 6.6.1 у RFC7231.

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

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

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

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

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

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

Щоб виправити помилку HTTP 500 Internal Server Error, насамперед потрібно з'ясувати, чому взагалі було викинуто код стану HTTP 500 Internal Server Error. Причинами можуть бути:

  1. Проблеми з конфігурацією або програмуванням сервера
  2. Порушення в файлі ".htaccess"
  3. Відсутні або пошкоджені файли на сервері
  4. Перевантаження сервера або недостатня кількість ресурсів, таких як CPU, оперативної пам'яті або пропускної здатності
  5. Труднощі з підключенням до інших систем або баз даних
  6. Проблеми безпеки, такі як DDoS-атаки або зараження шкідливим програмним забезпеченням
  7. Помилки програми або фреймворку на сервері

Всі ці речі потрібно перевірити, залежно від того, яка зміна була внесена останньою, її слід перевірити в першу чергу. Оскільки причини коду стану HTTP 500 Internal Server Error можуть бути найрізноманітнішими, не можна дати загальних рекомендацій.

Все це потрібно перевірити, залежно від того, яку зміну було зроблено останньою.

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

Створити власну сторінку помилки 500 Internal Server Error відносно легко як на веб-серверах "Apache", так і на "NGINX".

Apache Webserver

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

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

NGINX Webserver

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

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

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

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.InternalServerError
http.StatusInternalServerError
Response::HTTP_INTERNAL_SERVER_ERROR
httplib.INTERNAL_SERVER_ERROR
http.client.INTERNAL_SERVER_ERROR
http.HTTPStatus.INTERNAL_SERVER_ERROR
:internal_server_error

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

Підкоди статусу є суто технічними і ніколи не повинні надсилатися користувачеві. Наприклад, якщо згенеровано код стану 500.1, він може бути зареєстрований, але користувачеві буде надіслано код стану 500.:
500.0 Module or ISAPI error occurred
HTTP IIS, Неофіційно.
500.11 Application is shutting down on the web server
HTTP IIS, Неофіційно.
500.12 Application is busy restarting on the web server
HTTP IIS, Неофіційно.
500.13 Web server is too busy
HTTP IIS, Неофіційно.
500.15 Direct requests for Global.asax aren't allowed
HTTP IIS, Неофіційно.
500.19 Configuration data is invalid
HTTP IIS, Неофіційно.
500.21 Module not recognized
HTTP IIS, Неофіційно.
500.22 An ASP.NET httpModules configuration does not apply in Managed Pipeline mode.
HTTP IIS, Неофіційно.
500.23 An ASP.NET httpHandlers configuration does not apply in Managed Pipeline mode
HTTP IIS, Неофіційно.
500.24 An ASP.NET impersonation configuration does not apply in Managed Pipeline mode
HTTP IIS, Неофіційно.
500.50 A rewrite error occurred during RQ_BEGIN_REQUEST notification handling. A configuration or inbound rule execution error occurred
HTTP IIS, Неофіційно.
500.51 A rewrite error occurred during GL_PRE_BEGIN_REQUEST notification handling. A global configuration or global rule execution error occurred
HTTP IIS, Неофіційно.
500.52 A rewrite error occurred during RQ_SEND_RESPONSE notification handling. An outbound rule execution occurred
HTTP IIS, Неофіційно.
500.53 A rewrite error occurred during RQ_RELEASE_REQUEST_STATE notification handling. An outbound rule execution error occurred. The rule is configured to be executed before the output user cache gets updated
HTTP IIS, Неофіційно.
500.100 Internal ASP error
HTTP IIS, Неофіційно.

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

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

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

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

LinkedInGitHub