1000 FAQ, 500 tutorial e video esplicativi. Qui ci sono delle soluzioni!
Risolvere un errore 500 "Errore interno del server"
Questa guida si rivolge a voi se ottenete un errore 500 che può avere diverse origini generalmente legate allo sviluppo del vostro sito su un Hosting Web, in particolare con i rewrites
dei vostri file .htaccess
.
Premessa
- Apache2, in uso sui server, non supporta piĂą alcuni moduli come
mod_auth_anon
,mod_auth_dbm
,mod_authz_dbm
,mod_cern_meta
,mod_imap
,mod_imagemap
,mod_mime_magic
- Apache2 è rigoroso sugli errori di sintassi e quando incontra errori di sintassi in un file
.htaccess
, questo può causare errori 500 Internal Server Error o errori di reindirizzamento URL inattesi
Esempi di sintassi e correzione
In questo primo esempio, l'errore di sintassi è che la regola di reindirizzamento non specifica il codice di risposta di reindirizzamento HTTP da restituire.
RewriteRule ^articles/([0-9]+)/$ /article.php?id=$1 [L]
La correzione aggiunge la direttiva R=301
per specificare che il reindirizzamento deve restituire un codice 301 (permanente):
RewriteRule ^articles/([0-9]+)/$ /article.php?id=$1 [L,R=301]
In questo secondo esempio, l'errore di sintassi è che la direttiva Options
non specifica correttamente le opzioni da attivare o disattivare.
Options -Indexes FollowSymLinks
La correzione aggiunge il segno "+
" per specificare che FollowSymLinks
deve essere attivato piuttosto che disattivato:
Options -Indexes +FollowSymLinks
Risolvere questi errori
- Se la prima pagina o un'altra pagina mostra un errore 500, rinominare il file
.htaccess
o commentare tutte le righe con#
e decommentare riga per riga fino a trovare il passaggio che causa il problema. - Se l'errore si verifica dopo una modifica effettuata su una delle vostre pagine, la cosa più semplice è ripristinare la versione precedente del file.