500

Internal Server Error

Offisiell Understatuskoder
En uspesifisert intern serverfeil

Generell forklaring av 500-statuskoden

Denne tekstblokken er dessverre bare tilgjengelig på engelsk.

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.

Spesifikasjon av HTTP-statuskoden 500

Statuskoden 500 Internal Server Error indikerer at serveren støtte på en uventet tilstand som hindret den i å oppfylle forespørselen.

Kilde / Sitat fra: 500 Internal Server Error HTTP-statuskoden er spesifisert av seksjon 6.6.1 i RFC7231.

Hvordan kaste en 500-statuskode med PHP?

For å kaste HTTP-statuskoden 500 på en nettside kan PHP-funksjonen http_response_code brukes. Syntaksen er som følger: http_response_code(500) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Test 500 HTTP-statuskoden

For å kunne vise HTTP-statuskoden (i dette tilfellet 500 Internal Server Error) og annen informasjon på klientsiden, må utviklingskonsollen åpnes med F12. Naviger deretter til fanen "Nettverk". Nå kan siden åpnes, nettstedet (eksempel index.php) skal være synlig i nettverksfanen. Dette må velges, og deretter må Herder-delen velges. Brukeren vil da se følgende resultat:

Statuskode 500 Internal Server Error
Oversikt
URL: https://http-statuscode.com/errorCodeExample.php?code=500
Status: 500 Internal Server Error
De: Network
IP-adresse: XX.XX.XX.XX
Statuskode 500 Internal Server Error

Hvordan løser jeg problemet med 500-statuskoden?

For å fikse HTTP 500 Internal Server Error-feilen, er det første vi må gjøre å finne ut hvorfor HTTP 500 Internal Server Error-statuskoden ble kastet i utgangspunktet. Årsakene kan være:

  1. Problemer med serverkonfigurasjonen eller programmeringen
  2. Feil i ".htaccess"-filen
  3. Manglende eller ødelagte filer på serveren
  4. Overbelastning av serveren eller utilstrekkelige ressurser som CPU, RAM eller båndbredde
  5. Vanskeligheter med å koble til andre systemer eller databaser
  6. Sikkerhetsproblemer som DDoS-angrep eller infeksjoner med skadelig programvare
  7. Applikasjons- eller rammeverksfeil på serveren

Alle disse tingene må kontrolleres, avhengig av hvilken endring som ble gjort sist, bør dette kontrolleres først. Siden årsakene til en HTTP 500 Internal Server Error-statuskode kan være så varierte, kan det ikke gis noen generell anbefaling.

Alle disse tingene må kontrolleres, avhengig av hvilken endring som ble gjort sist.

Slik oppretter du din egen feilside for statuskode 500

Det er relativt enkelt å lage din egen 500 Internal Server Error-feilside med både "Apache" og "NGINX" webservere.

Apache Webserver

Webserveren "Apache" er en av de vanligste webserverne på Internett. For å lage din egen 500 Internal Server Error-feilside i "Apache", må følgende endring gjøres i følgende fil.

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

NGINX Webserver

I likhet med webserveren "Apache" er "NGINX" også mye brukt på Internett. For å lage din egen 500 Internal Server Error-feilside i "NGINX", må følgende endring gjøres i følgende fil.

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

Nettleserkompatibilitet for 500-statuskoden

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

Konstanter i programmeringsspråk

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

Understatuskoder til 500-statuskoden

Understatuskoder er rent tekniske, og skal aldri sendes til brukeren. Hvis for eksempel statuskode 500.1 kastes, kan den logges, men statuskode 500 vil bli sendt til brukeren.:
500.0 Module or ISAPI error occurred
HTTP IIS, Uoffisielt
500.11 Application is shutting down on the web server
HTTP IIS, Uoffisielt
500.12 Application is busy restarting on the web server
HTTP IIS, Uoffisielt
500.13 Web server is too busy
HTTP IIS, Uoffisielt
500.15 Direct requests for Global.asax aren't allowed
HTTP IIS, Uoffisielt
500.19 Configuration data is invalid
HTTP IIS, Uoffisielt
500.21 Module not recognized
HTTP IIS, Uoffisielt
500.22 An ASP.NET httpModules configuration does not apply in Managed Pipeline mode.
HTTP IIS, Uoffisielt
500.23 An ASP.NET httpHandlers configuration does not apply in Managed Pipeline mode
HTTP IIS, Uoffisielt
500.24 An ASP.NET impersonation configuration does not apply in Managed Pipeline mode
HTTP IIS, Uoffisielt
500.50 A rewrite error occurred during RQ_BEGIN_REQUEST notification handling. A configuration or inbound rule execution error occurred
HTTP IIS, Uoffisielt
500.51 A rewrite error occurred during GL_PRE_BEGIN_REQUEST notification handling. A global configuration or global rule execution error occurred
HTTP IIS, Uoffisielt
500.52 A rewrite error occurred during RQ_SEND_RESPONSE notification handling. An outbound rule execution occurred
HTTP IIS, Uoffisielt
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, Uoffisielt
500.100 Internal ASP error
HTTP IIS, Uoffisielt
Forfatter: Tony Brüser
Forfatter: Tony Brüser

Tony Brüser er en entusiastisk webutvikler med en forkjærlighet for HTTP-statuskoder.

LinkedInGitHub