itaeng

Risolvere la lentezza mostruosa di sendmail su ubuntu

In questi giorni avevo bisogno di testare l'invio di alcune email di conferma per un applicativo scritto in PHP. Niente di particolarmente complesso, ma una volta installato il pacchetto sendmail e php-mail notavo una enorme lentezza nell'invio delle email. Parlo di 2-3 minuti di attesa, con tanto di pagina web bloccata, in attesa che la mail venisse inviata: mostruosamente troppo! Come diamine è possibile?

Indagando su san google sono finalmente riuscito a venire a capo del problema. Di default, il file /etc/hosts di ubuntu non specifica il dominio locale, che però a sendmail serve. In pratica, è necessario aggiungerlo a mano. Per fare ciò, se il file /etc/hosts di default è simile a questo:

127.0.0.1    emanuele.itoscano.com
127.0.1.1    miohost

È sufficiente modificarlo così:

127.0.0.1     emanuele.itoscano.com.localdomain    emanuele.itoscano.com
127.0.1.1    emanuele.itoscano.com.localdomain    miohost

Naturalmente, "miohost" corrisponde all'hostname della propria macchina. Se non sapessi qual è, per scoprirlo ci viene in aiuto questo comando, che fornirà il dato che ci serve:

sudo cat /etc/hostname

Fatto questo potrebbe essere necessario riavviare i servizi di sendmail e apache2.

Facile e veloce no? Spero che questa miniguida possa farti risparmiare un po' del tempo che io ci ho messo per venirne a capo yes.