500
Internal Server Error
Ogólne wyjaśnienie kodu statusu 500
Ten blok tekstowy jest niestety dostępny tylko w języku angielskim.
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.
Specyfikacja kodu statusu HTTP 500
Źródło / Cytat z: Kod statusu 500 Internal Server Error HTTP jest określony przez sekcję 6.6.1 z RFC7231.
Protokół HTTP
Jak wyrzucić kod statusu 500 za pomocą PHP?
Aby wyrzucić na stronę internetową kod statusu HTTP 500, można użyć funkcji PHP http_response_code. Składnia jest następująca: http_response_code(500) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Testowanie kodu 500 statusu HTTP
Aby móc wyświetlić kod statusu HTTP (w tym przypadku 500 Internal Server Error) i inne informacje po stronie klienta, należy otworzyć konsolę programistyczną za pomocą F12. Następnie należy przejść do zakładki "Network". Teraz można otworzyć stronę, w zakładce "Network" powinna być widoczna strona (przykładowy index.php). Należy ją zaznaczyć, a następnie wybrać sekcję Herder. Użytkownik zobaczy wtedy następujący wynik:
URL: https://http-statuscode.com/errorCodeExample.php?code=500
Status: 500 Internal Server Error
Te: Network
Adres IP: XX.XX.XX.XX
Jak rozwiązać problem z kodem statusu 500?
Aby naprawić błąd HTTP 500 Internal Server Error, pierwszą rzeczą, którą musimy zrobić, to dowiedzieć się, dlaczego kod statusu HTTP 500 Internal Server Error został rzucony w pierwszej kolejności. Powodami mogą być:
- Problemy z konfiguracją serwera lub programowaniem
- Błędy w pliku ".htaccess"
- Brak lub uszkodzone pliki na serwerze
- Przeciążenie serwera lub niewystarczające zasoby takie jak CPU, RAM lub przepustowość
- Trudności w łączeniu się z innymi systemami lub bazami danych
- Problemy z bezpieczeństwem, takie jak ataki DDoS lub infekcje złośliwym oprogramowaniem
- Błędy aplikacji lub frameworka na serwerze
Wszystkie te rzeczy należy sprawdzić, w zależności od tego, która zmiana została dokonana jako ostatnia, należy to sprawdzić w pierwszej kolejności. Ponieważ przyczyny kodu statusu HTTP 500 Internal Server Error mogą być tak różnorodne, nie można sformułować ogólnego zalecenia.
Wszystkie te rzeczy należy sprawdzić, w zależności od tego, która zmiana została dokonana jako ostatnia.
Jak stworzyć własną stronę błędu dla kodu statusu 500
Apache Webserver
Serwer WWW "Apache" jest jednym z najczęściej spotykanych serwerów WWW w Internecie. Aby stworzyć własną stronę błędu 500 Internal Server Error w "Apache", należy dokonać następującej zmiany w poniższym pliku.
NGINX Webserver
Podobnie jak serwer internetowy "Apache", "NGINX" jest również szeroko stosowany w Internecie. Aby stworzyć własną stronę błędu 500 Internal Server Error w "NGINX", należy dokonać następującej zmiany w poniższym pliku.
location = /500.html {
root /usr/share/nginx/html;
internal;
}
Zgodność kodu statusu 500 z przeglądarką
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 |
Stałe w językach programowania
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
Kody podstatusów kodu statusu 500
500.0 | Module or ISAPI error occurred HTTP IIS, Nieoficjalne |
500.11 | Application is shutting down on the web server HTTP IIS, Nieoficjalne |
500.12 | Application is busy restarting on the web server HTTP IIS, Nieoficjalne |
500.13 | Web server is too busy HTTP IIS, Nieoficjalne |
500.15 | Direct requests for Global.asax aren't allowed HTTP IIS, Nieoficjalne |
500.19 | Configuration data is invalid HTTP IIS, Nieoficjalne |
500.21 | Module not recognized HTTP IIS, Nieoficjalne |
500.22 | An ASP.NET httpModules configuration does not apply in Managed Pipeline mode. HTTP IIS, Nieoficjalne |
500.23 | An ASP.NET httpHandlers configuration does not apply in Managed Pipeline mode HTTP IIS, Nieoficjalne |
500.24 | An ASP.NET impersonation configuration does not apply in Managed Pipeline mode HTTP IIS, Nieoficjalne |
500.50 | A rewrite error occurred during RQ_BEGIN_REQUEST notification handling. A configuration or inbound rule execution error occurred HTTP IIS, Nieoficjalne |
500.51 | A rewrite error occurred during GL_PRE_BEGIN_REQUEST notification handling. A global configuration or global rule execution error occurred HTTP IIS, Nieoficjalne |
500.52 | A rewrite error occurred during RQ_SEND_RESPONSE notification handling. An outbound rule execution occurred HTTP IIS, Nieoficjalne |
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, Nieoficjalne |
500.100 | Internal ASP error HTTP IIS, Nieoficjalne |