500

Internal Server Error

Ufficiale Codici di sotto-stato
Errore interno al server non specificato

Spiegazione generale del codice di stato 500

Questo blocco di testo è purtroppo disponibile solo in inglese.

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.

Specifica del codice di stato HTTP 500

Il codice di stato 500 Internal Server Error indica che il server ha incontrato una condizione inaspettata che gli ha impedito di soddisfare la richiesta.

Fonte / Citazione da: Il codice di stato HTTP 500 Internal Server Error è specificato dalla sezione 6.6.1 di RFC7231.

Come lanciare un codice di stato 500 con PHP?

Per lanciare il codice di stato HTTP 500 su una pagina web, si può usare la funzione PHP http_response_code. La sintassi è la seguente: http_response_code(500) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Test del codice di stato HTTP 500

Per poter visualizzare il codice di stato HTTP (in questo caso 500 Internal Server Error) e altre informazioni sul lato client, è necessario aprire la console di sviluppo con F12. Quindi navigare nella scheda "Rete". Ora la pagina può essere aperta, il sito web (ad esempio index.php) dovrebbe essere visibile nella scheda Rete. Questo deve essere selezionato e poi deve essere selezionata la sezione Herder. L'utente vedrà quindi il seguente risultato:

Codice di stato 500 Internal Server Error
Panoramica
URL: https://http-statuscode.com/errorCodeExample.php?code=500
Stato: 500 Internal Server Error
Quelle: Network
Indirizzo IP: XX.XX.XX.XX
Codice di stato 500 Internal Server Error

Come posso risolvere il problema del codice di stato 500?

Per risolvere l'errore HTTP 500 Internal Server Error, la prima cosa da fare è scoprire perché il codice di stato HTTP 500 Internal Server Error è stato lanciato in primo luogo. I motivi possono essere:

  1. Problemi di configurazione o programmazione del server
  2. Errori nel file ".htaccess"
  3. File mancanti o corrotti sul server
  4. Sovraccarico del server o risorse insufficienti come CPU, RAM o larghezza di banda
  5. Difficoltà di connessione ad altri sistemi o database
  6. Problemi di sicurezza come attacchi DDoS o infezioni da malware
  7. Errrore di applicazioni o framework sul server

Tutti questi elementi devono essere controllati, a seconda dell'ultima modifica apportata. Poiché le cause di un codice di stato HTTP 500 Internal Server Error possono essere molto varie, non è possibile formulare una raccomandazione generale.

Tutti questi elementi devono essere verificati, a seconda dell'ultima modifica apportata.

Come creare la propria pagina di errore per il codice di stato 500

Creare la propria pagina di errore 500 Internal Server Error è relativamente facile sia con il server web "Apache" che con "NGINX".

Apache Webserver

Il server web "Apache" è uno dei server web più comuni su Internet. Per creare la propria pagina di errore 500 Internal Server Error in "Apache", è necessario apportare la seguente modifica al file seguente.

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

NGINX Webserver

Simile al server web "Apache", anche "NGINX" è ampiamente utilizzato su Internet. Per creare la propria pagina di errore 500 Internal Server Error in "NGINX", è necessario apportare la seguente modifica al file seguente.

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

Compatibilità con i browser del codice di stato 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

Costanti nei linguaggi di programmazione

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

Codici di stato secondari del codice di stato 500

I codici di stato secondari sono puramente tecnici e non devono mai essere inviati all'utente. Ad esempio, se viene lanciato il codice di stato 500.1, questo può essere registrato, ma il codice di stato 500 sarà inviato all'utente.:
500.0 Module or ISAPI error occurred
HTTP IIS, Non ufficiale
500.11 Application is shutting down on the web server
HTTP IIS, Non ufficiale
500.12 Application is busy restarting on the web server
HTTP IIS, Non ufficiale
500.13 Web server is too busy
HTTP IIS, Non ufficiale
500.15 Direct requests for Global.asax aren't allowed
HTTP IIS, Non ufficiale
500.19 Configuration data is invalid
HTTP IIS, Non ufficiale
500.21 Module not recognized
HTTP IIS, Non ufficiale
500.22 An ASP.NET httpModules configuration does not apply in Managed Pipeline mode.
HTTP IIS, Non ufficiale
500.23 An ASP.NET httpHandlers configuration does not apply in Managed Pipeline mode
HTTP IIS, Non ufficiale
500.24 An ASP.NET impersonation configuration does not apply in Managed Pipeline mode
HTTP IIS, Non ufficiale
500.50 A rewrite error occurred during RQ_BEGIN_REQUEST notification handling. A configuration or inbound rule execution error occurred
HTTP IIS, Non ufficiale
500.51 A rewrite error occurred during GL_PRE_BEGIN_REQUEST notification handling. A global configuration or global rule execution error occurred
HTTP IIS, Non ufficiale
500.52 A rewrite error occurred during RQ_SEND_RESPONSE notification handling. An outbound rule execution occurred
HTTP IIS, Non ufficiale
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, Non ufficiale
500.100 Internal ASP error
HTTP IIS, Non ufficiale
Autore: Tony Brüser
Autore: Tony Brüser

Tony Brüser è un entusiasta sviluppatore web con una predilezione per i codici di stato HTTP.

LinkedInGitHub