Vai al contenuto principale

Errore 500: cos’è e come risolvere l’errore 500?

Ogni volta che navigando su internet ci troviamo davanti ad un errore è sempre una scocciatura. Molto spesso può verificarsi un errore proprio nel momento in cui stiamo acquistando un prodotto o consultando una pagina importante...

La scocciatura si moltiplica se il sito web che dà errore è proprio il tuo. A te è già capitato?

Proprio per questo abbiamo creato una serie di articoli in cui analizziamo i diversi tipi di errore che possono capitare al tuo sito web analizzandone cause e possibili soluzioni.

In questo vogliamo concentrarci sugli errori 500 e la loro natura.

Solitamente identificato come errore http 500, si tratta di un codice di stato HTTP che impedisce di stabilire una connessione e di caricare la pagina richiesta.

Non è un errore molto raro, infatti è capitato a molte persone che gestiscono siti web di avere a che fare con una situazione di questo tipo, magari nel momento meno opportuno. Se sei un visitatore, quello che puoi fare è abbandonare la pagina e tornarci dopo un po’ di tempo.

Ma se si tratta del tuo sito web dovrai occupartene al più presto. Se non risolto in tempo, come tutti gli errori sul tuo sito web, può causare inconvenienti legati alla user experience, alle tue conversioni ma anche creare effetti negativi lato SEO.

Non preoccuparti però, non si tratta di qualcosa di grave, l’importante è conoscere l’errore e sapere come agire.

Quindi la prima domanda da farci è: quale indicazione ci dà e quali sono le possibili cause dietro questo errore? Da qui vedremo come risolvere l’errore e ricominciare a convertire al più presto sul proprio sito web.

Cosa vuol dire errore 500?

Partiamo dalla definizione dell’errore 500. Secondo l’IETF - Internet Engineering Task Force - l’errore 500 è definito come:

“Internal Server Error: indica che il server ha riscontrato una condizione inaspettata che gli ha impedito di soddisfare la richiesta”

 

blog errore 500

 

 

Per capire cos’è iniziamo con il dare una spiegazione del significato di Internal Server Error.

Cos’è l’Internal Server Error?

Con Internal Server Error - in italiano letteralmente “errore interno del server” - si intende un codice che indica un errore lato server nella navigazione online. Il browser quindi segnala un errore inaspettato che non gli permette di raggiungere la pagina web cercata.

Ogni volta che si effettua una ricerca su internet, il server web comunica al browser la richiesta di accedere a quella pagina. I codici di stato HTTP riferiscono se la richiesta ha avuto successo o meno.

Se il browser riceve come risposta lo stato 200, allora vuol dire che la navigazione è andata bene e c’è stata risposta al server - e tu che navighi non ti accorgerai di nulla, verrai direttamente reindirizzato alla pagina che hai cercato.

Il problema si pone invece quando vengono fuori i codici 4xx e 5xx: i primi corrispondono ad errori lato client, mentre i secondi fanno riferimento ad errori del server.

Esistono numerosi codici di stato HTTP 5xx, ognuno con un significato diverso - il che ti permette ancora meglio di capire di che tipo di errore si tratta e dove andare ad investigarne e risolverne le cause.

Eccone alcuni:

  • Errore 500 Internal Server Error: messaggio generico, senza dettagli, di cui parleremo oggi

  • Errore 501 Not Implemented: il server non riesce a soddisfare il metodo della richiesta

  • Errore 502 Bad Gateway: il server agisce come gateway o proxy e ha ricevuto una risposta non valida dal server di upstream

  • Errore 503 Service Unavailable: server momentaneamente non disponibile, fa riferimento ad una situazione temporanea

  • Errore 504 Gateway Timeout: simile al 502, ma in questo caso la risposta dal server è stata troppo lenta

  • Errore 505 HTTP Version Not Supported: il server non supporta la versione HTTP richiesta

Errori 500: come riconoscerli?

Come avrai oramai intuito, l’errore 500 fa riferimento ad un errore causato da problemi sul server.

L’unica indicazione che viene fornita all’utente nel momento in cui avviene l’errore è proprio la tipologia dello stesso, che viene visualizzata nella finestra principale del browser.

Ecco alcuni esempio di messaggio di errore:

  • Errore 500 Internal Server
  • Errore 500 Internal Server Error
  • 500 server error
  • 500 Internal Server Error
  • Error 500 internal server error
  • Internal Server Error
  • 500 Error
  • 500. That’s an error.
  • HTTP 500 Internal Error
  • HTTP Error 500
  • HTTP 500 – Internal Server Error
  • Internal server error 500
  • Temporary Error (500)
  • Errore 500 interno al server
  • Errore 500 http
  • Errore http 500

A volte può essere accompagnato da queste frasi:

  • Il server ha riscontrato un errore interno e non ha potuto completare la richiesta.
  • Sorry something went wrong
  • There was an error. Please try again later
  • The website cannot display the page
  • It’s currenty unable to handle this request

Ma come mai esistono così tanti messaggi diversi per uno stesso errore? In realtà si tratta semplicemente di browser diversi che impostano l’errore in maniera diversa, ma questo non aggiunge nulla all’informazione data dalle diverse diciture riguardanti l’errore 500. Alcuni browser potrebbero addirittura mostrare soltanto una schermata bianca, e lì diventa più complicato individuare l’errore.

Se vuoi entrare più nello specifico dell’errore 500, avrai bisogno di scaricare Microsoft IIS - Internet Information Services - che ti permette di avere qualche informazione in più sulla causa dell’errore.

Ti faccio qualche esempio:

  • 500.0: errore presente in un modulo o nell’ISAPI
  • 500.11: errore riguardante una delle applicazioni sul server che sta per essere arrestata
  • 500.12: errore che segnala il riavvio di un’applicazione
  • 500.13: errore che indica un sovraccarico del server
  • 500.19: errore che informa che i dati della configurazione non sono validi
  • 500.21: errore dato da uno dei moduli che non è stato riconosciuto

    e altri ancora.

Ma ora che sappiamo tutto riguardo il significato dell’errore 500, passiamo a capire quali sono le possibili cause.

Quali sono le cause dell'errore 500?

Alcune delle cause dell’errore 500 le abbiamo già introdotte presentando le varianti di errore che fornisce Miscrosoft IIS. Questi errori possono essere causati da problemi con il file .htaccess, ma anche da problemi sul server legati a manutenzione, o a malfunzionamenti.

Nell’elenco che segue andiamo ad esaminare le cause più comuni che sono alla base dell’errore 500.

Errori riguardanti il file .htaccess

Il file .htaccess viene utilizzato per dare delle direttive al server, come ad esempio per effettuare un redirect.

Se si inserisce una riga di comando errata, o se c’è anche soltanto un errore di scrittura o errore di sintassi nel file, questo può determinare un errore nella richiesta del server.

Errore dovuto ad un problema con i permessi

Tutti i file e le cartelle depositate sul server hanno bisogno di determinati permessi di lettura, scrittura ed esecuzione per averne accesso, lo stesso vale per i file e le cartelle del tuo sito in WordPress o altro CMS.

Degli errori nei permessi potrebbero essere la causa del 500 Internal Server Error.

Errore dovuto ad un problema con uno script

Anche un codice errato di uno script o nell'impostazione dei percorsi potrebbe essere causa dell’errore 500.

Problemi con il server

Un altra causa dell’errore può essere determinato da problemi con il server, ad esempio un problema di manutenzione, un sovraccarico del server per richieste elevate o problemi di altro tipo.

Problemi con plugin e temi

A volte l’errore può verificarsi proprio dopo l’installazione di un nuovo plugin, un’estensione o tema. In questo caso individuare la causa del problema sarà piuttosto semplice.

Errore causato da problemi con il database

Tra i casi più comuni di problemi legati al database ci sono: database corrotto, sovraccarico del server del database e credenziali di accesso al database errate.

Limite di memoria di PHP

Un’altra causa dell’errore 500 può esser fatta risalire ad un limite di memoria di PHP, quando il processo supera la capacità di memoria PHP e quindi non può essere eseguito correttamente.

Ma che succede se l’errore non rientra in nessuna di queste ipotetiche cause?

Quello che ti consigliamo di fare, se hai già verificato ad una ad una queste eventualità e nessuna sembra essere quella che ha determinato il problema, è di andare ad effettuare una analisi del file di log.

Per farlo accedi al file del sito - come il file manager del pannello di controllo o via ftp - e cerca un file del tipo “error_log

 

error log 1

 

Come si risolve l’errore 500?

Una volta identificato l’errore, la risoluzione è molto più semplice.

Errore del file .htaccess

Per appurare che sia questo l’errore ti basterà rinominare temporaneamente il file. Se dopo aver rinominato il file, l’errore 500 scompare, vuol dire che hai individuato l’errore. Quello che dovrai fare è identificare e correggere l’errore all’interno del file, per poi rinominare il file con il suo nome originario .htaccess.

Errore dovuto ad un problema con i permessi

In questo caso ti basterà andare a controllare i permessi di file e cartelle. Se il tuo sito web è in WordPress i permessi dei file dovranno essere 644 o 640, quelli delle cartelle 755 o 750. Come verificare (e modificare) i permessi? Puoi farlo sempre tramite file manager dal pannello di controllo.

Dal file manager di Tophost trovi la colonna “Autorizzazioni” accanto ad ogni file e cartella, e da lì puoi controllare che ci siano permessi di lettura, scrittura ed esecuzione e cliccandoci sopra potrai controllare il numero del permesso.

 

autorizzazioni wp

 

Errore di script

Una ulteriore verifica da fare è la valutazione degli script: il problema può essere infatti dovuto ad un trasferimento, eliminazione o rinomina di un file di script.

Problemi del server

Per escludere che si tratti di un problema del server ti basterà verificare tramite i dati di uptime che tutto funzioni correttamente. Per avere la certezza assoluta che non sia questo il problema puoi sempre contattare il servizio di assistenza del tuo hosting e richiedere una verifica.

Problema di plugin e temi

In questo caso è molto semplice identificare il problema: ti basterà disattivare il plugin, l’estensione o il tema appena installato per vedere il sito web tornare a funzionare. Se non riesci a capire qual è il plugin che causa l’errore dovrai disattivarli tutti e riattivarli uno ad uno. Il modo più semplice per compiere questa operazione è dal pannello di gestione di WordPress

Limite memoria PHP

Se l’errore 500 è dovuto ad un limite di memoria PHP ti basterà modificare il limite di memoria per risolvere. Ecco le istruzioni per modificare il limite di memoria PHP sui piani hosting Tophost.

Altri consigli che puoi trovare sul nostro manuale di assistenza per risolvere l’errore 500.

Errore 500: cosa fare lato utente

Se sei un utente che sta navigando e ti trovi davanti ad una pagina con errore cosa devi fare?

1. Aspettare

Il primo consiglio, più banale, è quello di aspettare. Se infatti ci sono degli errori di cui i tecnici del sito in questione si stanno occupando, per prima cosa dovrai semplicemente dare loro il tempo di identificare e risolvere il problema.

2. Svuotare la cache

Un altro consiglio è quello di svuotare la cache del browser. Infatti, in caso di un gran numero di richieste di accesso al sito, il server può andare sotto pressione. Cancellando la cache del tuo browser questo potrà caricare una versione non aggiornata della pagina e permettere l’accesso.

3. Attingere alla cache di Google

Hai cancellato la cache del tuo browser ma non riesci ancora ad accedere al sito web? L’ultimo consiglio che posso darti è quello di andare a cercare nella cache di Google. Scrivi nella barra di ricerca cache seguito dall’URL e accederai ad una versione non aggiornata del sito web. Non è detto che questa versione sia completamente navigabile ma per “arrangiare” è la soluzione migliore.

Cerchi una pagina di un sito web di mesi o anni fa? Allora puoi consultare l’Archivio Internet Wayback Machine, che va indietro anche di decenni nelle versioni di un sito web.


Pubblicato: | Aggiornamento: