Quando visiti un sito web, il browser invia una richiesta al server su cui è ospitato il sito. Il server accetta la richiesta e la elabora restituendo le risorse (PHP, HTML, CSS, ecc.) sul tuo dispositivo, cioè rendendo visibile sul tuo browser il sito che vuoi visitare comprensivo di testi, immagini e di tutti i contenuti esistenti in esso.

L’intestazione HTTP include anche quello che viene chiamato “codice di stato HTTP”. Un codice di stato fornisce un modo per dare informazioni sullo stato della richiesta. Potrebbe essere un codice di stato 200, che significa “È tutto OK”, o un codice di stato 500, che significa che qualcosa è andato storto.

errore 500

Errore 500: i casi più comuni

Esistono vari casi in cui potresti visualizzare un errore 500. Le forme più diffuse di errore 500 vengono mostrate con le diciture seguenti, che in genere possono essere sia in italiano che in inglese (a seconda dei casi):

  • Errore 500 Internal Server Error
  • HTTP 500 Internal Error
  • HTTP Error 500
  • 500. That’s an error.
  • 500 Internal Server Error
  • Internal Server Error
  • The website cannot display the page
  • HTTP 500 – Internal Server Error
  • Internal server error 500
  • 500 Error
  • 500 server error

Cause dell’errore 500

I server generano tale errore in caso di malfunzionamento del sito e possono essere riconoscibili dai seguenti esempi:

  • plugin e temi dei CMS: plugin e temi di terze parti non aggiornati, vulnerabili o incompatibili che vanno in conflitto con altri elementi del CMS
  • limite memoria PHP: il processo supera la capacità di memoria PHP preimpostata
  • codice errato nel file .htaccess: il codice all’interno del file .htaccess non è corretto
  • errore nei permessi: i permessi di file e cartelle non sono impostati in modo corretto
  • timeout PHP: lo script tenta di caricare una risorsa esterna e va in un timeout
  • errore di sintassi o di codice negli script: anche una sola istruzione scritta male genera tale errore

Netsons Troubleshooting

Se ti imbatti in un errore 500 navigando sul web, ti aiutiamo a capire cosa può essere successo.

Sui nuovi Piani di Hosting Netsons trovi un potente plugin all’interno del pannello di controllo dell’hosting chiamato Netsons Troubleshooting, con il quale è possibile verificare se tramite il CMS sono stati generati error_log.

In questi possono essere riportati eventuali “Fatal Error” di PHP, oppure query e richieste al database non completamente terminate.

netsons troubleshooting

Se possiedi un vecchio piano di hosting e non hai questo plugin all’interno del tuo pannello hosting, puoi procedere manualmente al controllo di file error_log e .htaccess, sfogliando all’interno della public_html e delle cartelle relative ai sottodomini e domini aggiuntivi creati.

Al termine del controllo otterrai 2 report separati:

  • Anomalie Web
  • Anomalie Database

In entrambi i casi, potrai verificare il risultato dell’analisi nelle ultime righe dei report, ordinate dall’alto verso il basso dall’errore meno recente fino all’errore più recente. Lì potrai visionare le righe di codice eseguite dal server web e se queste fanno riferimento a plugin o query database non correttamente eseguite.

Esempio di linee di codice all’interno del file error_log generato dal CMS:

[29-Sept-2019 12:03:37 UTC] PHP Fatal error:  Cannot redeclare class Mailchimp_Folders in /home/utente_cPanel/public_html/wp-content/plugins/wordpress-popup/vendor/mailchimp/mailchimp/src/Mailchimp/Folders.php on line 3

Come risolvere un errore 500

Se stai utilizzando un CMS comune come WordPress, Joomla, Drupal o Prestashop, e se si tratta di Fatal Error inerenti al moduli installati, sarà opportuno accedere al pannello amministrativo del CMS e disabilitare i plugin uno alla volta.

In alternativa, se lo stesso pannello admin è bloccato, naviga le cartelle all’interno dell’hosting, individua quella dove viene richiamato il plugin e rinominala manualmente modificando il nome della stessa.

Se i plugin da disabilitare hanno funzioni di Cache o redirect Https e se si implementano con il file .htaccess, per risolvere al meglio la questione, ti consigliamo di analizzare anche quest’ultimo e le direttive scritte al suo interno. Nel caso rinominare anche il file .htaccess (esempio: _.htaccess) ed aggiornare la pagina.

Se il sito contiene codice personalizzato, è sempre opportuno effettuare un’analisi approfondita da parte del Webmaster che gestisce il sito web.

Ti consigliamo di tenere sempre aggiornati plugins, moduli e CMS del tuo sito web. In effetti, l’errore 500 riguarda proprio l’incompatibilità tra essi. Non farti trovare impreparato!