500

Internal Server Error

Ametlik Alamstaatuse koodid
Täpsustamata sisemine serveriviga

Üldine selgitus 500 staatuskoodi kohta

See tekstiplokk on kahjuks saadaval ainult inglise keeles.

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 staatuskoodi 500 täpsustamine

Staatusekood 500 Internal Server Error näitab, et serveril tekkis ootamatu olukord, mis takistas taotluse täitmist.

Allikas / Tsitaat: HTTP-kood 500 Internal Server Error on määratletud jaotises 6.6.1 jaotises RFC7231.

Kuidas PHP-ga 500 staatuskoodi visata?

Veebilehel HTTP-koodi 500 kuvamiseks võib kasutada PHP-funktsiooni http_response_code. Süntaks on järgmine: http_response_code(500) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Testige HTTP-koodi 500

Selleks, et kuvada HTTP staatuskoodi (antud juhul 500 Internal Server Error) ja muud teavet kliendi poolel, tuleb arenduskonsool avada klahviga F12. Seejärel navigeerige vahekaardile "Network". Nüüd saab lehekülje avada, veebileht (näiteks index.php) peaks olema nähtav võrgu vahekaardil. See tuleb valida ja seejärel tuleb valida Herder sektsioon. Seejärel näeb kasutaja järgmist tulemust:

Staatuse kood 500 Internal Server Error
Ülevaade
URL: https://http-statuscode.com/errorCodeExample.php?code=500
Staatus: 500 Internal Server Error
Need: Network
IP-aadress: XX.XX.XX.XX
Staatuse kood 500 Internal Server Error

Kuidas lahendada probleem 500 staatuskoodiga?

HTML Error 500 Internal Server Error parandamiseks tuleb kõigepealt välja selgitada, miks HTTP 500 Internal Server Error staatuskood üldse välja visati. Põhjused võivad olla:

  1. Probleemid serveri konfiguratsiooni või programmeerimisega
  2. Vigad ".htaccess" failis
  3. Puuduvad või rikutud failid serveris
  4. Serveri ülekoormus või ebapiisavad ressursid, nagu protsessor, RAM või ribalaius
  5. Puudulikud ühendused teiste süsteemide või andmebaasidega
  6. Turvalisusprobleemid, nagu DDoS-rünnakud või pahavara nakatumine
  7. Serveri rakendus- või raamistikuvigad

Kõiki neid asju tuleb kontrollida, sõltuvalt sellest, milline muudatus tehti viimati, tuleks seda kontrollida esimesena. Kuna HTTP 500 Internal Server Error staatuskoodi põhjused võivad olla nii erinevad, ei saa anda üldist soovitust.

Kõiki neid asju tuleb kontrollida, sõltuvalt sellest, milline muudatus viimati tehti.

Kuidas luua oma vealehekülg staatuskoodi 500 jaoks

Oma 500 Internal Server Error vealehe loomine on nii "Apache" kui ka "NGINX" veebiserverite puhul suhteliselt lihtne.

Apache Webserver

Veebiserver "Apache" on üks levinumaid veebiservereid Internetis. Oma 500 Internal Server Error vealehe loomiseks "Apache'is" tuleb teha järgmine muudatus järgmises failis.

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

NGINX Webserver

Sarnaselt veebiserverile "Apache" on ka "NGINX" internetis laialdaselt kasutusel. Oma 500 Internal Server Error vealehe loomiseks "NGINXis" tuleb teha järgmine muudatus järgmises failis.

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

500 staatuskoodi brauserite ühilduvus

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

Konstandid programmeerimiskeeltes

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

Staatusekoodi 500 alamkoodid

Alamstaatusekoodid on puhtalt tehnilised ja neid ei tohiks kunagi kasutajale saata. Näiteks, kui kuvatakse staatuskood 500.1, võib seda logida, kuid kasutajale saadetakse staatuskood 500.:
500.0 Module or ISAPI error occurred
HTTP IIS, Mitteametlik
500.11 Application is shutting down on the web server
HTTP IIS, Mitteametlik
500.12 Application is busy restarting on the web server
HTTP IIS, Mitteametlik
500.13 Web server is too busy
HTTP IIS, Mitteametlik
500.15 Direct requests for Global.asax aren't allowed
HTTP IIS, Mitteametlik
500.19 Configuration data is invalid
HTTP IIS, Mitteametlik
500.21 Module not recognized
HTTP IIS, Mitteametlik
500.22 An ASP.NET httpModules configuration does not apply in Managed Pipeline mode.
HTTP IIS, Mitteametlik
500.23 An ASP.NET httpHandlers configuration does not apply in Managed Pipeline mode
HTTP IIS, Mitteametlik
500.24 An ASP.NET impersonation configuration does not apply in Managed Pipeline mode
HTTP IIS, Mitteametlik
500.50 A rewrite error occurred during RQ_BEGIN_REQUEST notification handling. A configuration or inbound rule execution error occurred
HTTP IIS, Mitteametlik
500.51 A rewrite error occurred during GL_PRE_BEGIN_REQUEST notification handling. A global configuration or global rule execution error occurred
HTTP IIS, Mitteametlik
500.52 A rewrite error occurred during RQ_SEND_RESPONSE notification handling. An outbound rule execution occurred
HTTP IIS, Mitteametlik
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, Mitteametlik
500.100 Internal ASP error
HTTP IIS, Mitteametlik
Autor: Tony Brüser
Autor: Tony Brüser

Tony Brüser on entusiastlik veebiarendaja, kellel on kalduvus HTTP staatuskoodide suhtes.

LinkedInGitHub