Un 503 è il server che dice «adesso no». È l'unico 5xx che a volte è corretto: la modalità manutenzione restituisce 503 di proposito, e un motore di ricerca che lo legge tornerà più tardi invece di scartare la pagina.

È voluto?

  • Un CMS lasciato in modalità manutenzione: WordPress si dimentica dietro un file .maintenance quando un aggiornamento fallisce a metà.
  • Un limite di frequenza che fa il suo mestiere, cioè un 503 con l'intestazione Retry-After.
  • Uno script di pubblicazione che ha messo il sito dietro una pagina di attesa e poi non l'ha tolta.
ls -la /path/to/site/.maintenance && rm /path/to/site/.maintenance

Oppure è finito qualcosa?

Se nulla è voluto, al server non resta capacità per accettare la richiesta. Leggi prima il carico, perché quel numero ti dice quale risorsa è finita.

uptime; free -m; df -h
  • Un carico ben oltre il numero dei tuoi core: troppo lavoro, troppo poco processore.
  • Quasi nessuna memoria libera e swap in uso: la macchina arranca e tutto è lento.
  • Un disco pieno: nulla riesce a scrivere, e quasi tutti i servizi preferiscono restituire 503 piuttosto che rovinare i dati.
Il disco pieno è la causa più comune e la meno sospettata. Controllala per prima: costa un comando ed è spesso l'intera risposta.
Non cancellare mai i file di registro per liberare spazio mentre un servizio ci sta scrivendo: lo spazio non torna finché il processo non chiude il descrittore. Svuotali invece: : > /var/log/big.log