Hosting Web - Buone pratiche per l'invio delle email
Scegli tra la funzione PHP mail() e l'invio SMTP autenticato per inviare email dal tuo hosting web e configura l'SMTP con il tuo account email OVHcloud
Obiettivo
Il tuo hosting web offre due modi per inviare email dal tuo sito: la funzione PHP mail() nativa, che utilizza i server di invio del tuo hosting, e l'invio SMTP autenticato tramite un account email associato al tuo dominio. Entrambi sono legittimi. mail() è il metodo predefinito: non richiede alcuna configurazione, è soggetto a una quota per hosting e può essere monitorato dal tuo Spazio Cliente OVHcloud. L'SMTP autenticato è l'alternativa quando devi controllare l'identità del mittente: l'indirizzo From: è legato a un account autenticato e l'email porta la firma del tuo dominio. Le sue quote si applicano per account email e per indirizzo IP di origine, condiviso tra i siti di un hosting condiviso.
Questa guida ti aiuta a scegliere tra i due metodi e ti spiega come configurare un invio SMTP autenticato da un hosting condiviso, sia che tu gestisca un sito WordPress, un altro CMS o un'applicazione PHP.
Prerequisiti
- Disporre di un'offerta di Hosting Web OVHcloud.
- Solo per l'invio SMTP autenticato: disporre di un indirizzo email associato al tuo nome a dominio (offerta MX Plan, Email Pro o Exchange). Se non ne hai ancora uno, consulta la guida Creare un account email con MX Plan.
Accesso allo Spazio Cliente OVHcloud
- Link diretto:
- Percorso di navigazione:
Web Cloud>Hosting> Seleziona il tuo hosting web
Procedura
1. mail() o SMTP autenticato: quale scegliere?
Entrambi i metodi inviano email dal tuo sito web. Si differenziano per:
- il server di invio dell'email,
- le limitazioni di invio,
- il modo in cui le monitori.
Qualunque sia il metodo scelto:
- I server destinatari (Gmail, Outlook, ecc.) verificano che il dominio del
From:autorizzi il server di invio. Mantieni corretti i tuoi record SPF, DKIM e DMARC nella tua zona DNS. - Un invio abusivo o di spam dal tuo hosting o dal tuo account email comporta un blocco automatico. Se le tue email non partono più, consulta la guida Gestire l'invio delle email automatiche.
- La dimensione totale di un'email non può superare 10 MB, intestazioni e codifica inclusi.
Moduli aperti: un vettore di abuso per entrambi i metodi
Un modulo di contatto accessibile pubblicamente, senza alcun meccanismo di protezione, è un bersaglio privilegiato per i bot. I bot lo sfruttano per inviare migliaia di email in pochi minuti tramite il tuo hosting: l'IP condiviso viene bloccato e tutti i clienti del cluster ne subiscono le conseguenze.
Metti in atto le seguenti protezioni su qualsiasi modulo che generi un invio di email:
- Captcha: integra un sistema di verifica (Google reCAPTCHA v3, hCaptcha o un semplice calcolo aritmetico) per bloccare gli invii automatizzati.
- Limitazione della frequenza: limita il numero di invii per indirizzo IP lato server per evitare abusi a raffica.
- Validazione rigorosa degli input: ripulisci tutti i campi del modulo prima di utilizzarli in un'email, non fidarti mai dei dati inseriti dall'utente.
L'assenza di un captcha su un modulo di invio aperto è una delle cause più frequenti di blocco degli hosting condivisi per invio di spam. Questa protezione è indispensabile qualunque sia il metodo di invio scelto.
2. Configurare l'invio SMTP autenticato con un account email OVHcloud
Principio
Invia le tue email tramite una connessione SMTP autenticata verso il server di posta OVHcloud, utilizzando un account email associato al tuo dominio (ad esempio contact@mydomain.ovh).
Questo approccio ha tre vantaggi:
- Autenticazione garantita: il server OVHcloud verifica la tua identità prima di accettare l'email.
- SPF e DKIM: l'email viene inviata da un server autorizzato per il tuo dominio e firmata DKIM se DKIM è attivato per il tuo dominio.
- Un solo account identificato: ogni invio è legato a un unico account email, di cui puoi cambiare la password in qualsiasi momento per fermare uno script o un plugin abusivo.
Invio con mail(): il dominio deve essere associato al tuo hosting
Per inviare email dal tuo hosting web con la funzione PHP mail(), il dominio utilizzato nel campo From: deve essere associato al tuo hosting.
Questo dominio non deve necessariamente essere gestito nel tuo account OVHcloud: puoi utilizzare un dominio registrato presso un altro registrar, purché sia associato al tuo hosting web: è questa associazione che ti autorizza a inviare email a nome di quel dominio.
Se il tuo dominio non è ancora associato al tuo hosting, aggiungilo come multisito dal tuo Spazio Cliente OVHcloud, poi verifica la configurazione DNS associata. Consulta la guida Ospitare più siti su uno stesso hosting.
Un invio effettuato per un dominio non associato al tuo hosting non può essere autenticato: viene trattato come un invio non autenticato e sarà quindi rifiutato e registrato come errore.
Perché il campo From: deve appartenere al tuo dominio
Il campo From: della tua email deve obbligatoriamente contenere un indirizzo appartenente al tuo dominio (ad esempio contact@mydomain.ovh), e questo indirizzo deve corrispondere all'account SMTP utilizzato per l'autenticazione.
Se il From: non corrisponde al dominio autorizzato nel record SPF, o se la firma DKIM non corrisponde, i server di posta destinatari (Gmail, Outlook, ecc.) possono rifiutare l'email o classificarla come spam.
Per massimizzare la recapitabilità, verifica che i record SPF, DKIM e DMARC siano configurati correttamente nella tua zona DNS. Gmail e Yahoo Mail li richiedono ormai per i mittenti che inviano grandi volumi. Consulta le nostre guide:
Moduli di contatto: campo From: fisso e Reply-To: dell'utente
Un errore frequente: inserire nel campo From: l'indirizzo email digitato dall'utente nel modulo. Ad esempio, un visitatore inserisce utente@gmail.com e lo script utilizza questo indirizzo come mittente.
Questo comportamento è errato per due motivi:
- Il record SPF del tuo dominio non autorizza i server Gmail (o qualsiasi altro fornitore terzo) a inviare a tuo nome → errore del controllo SPF.
- Invii "a nome di" un indirizzo che non ti appartiene → alto rischio di classificazione come spam o di rifiuto.
Lo schema corretto per un modulo di contatto:
Quando rispondi, il tuo client di posta utilizza l'indirizzo del campo Reply-To:, senza compromettere l'autenticazione SPF/DKIM.
Ecco come adattare l'esempio PHPMailer per un modulo di contatto:
Non passare mai direttamente i dati di un modulo a PHPMailer senza una validazione preventiva. Utilizza filter_var() per l'indirizzo email e htmlspecialchars() + strip_tags() per i campi di testo, in modo da evitare le iniezioni di intestazioni email.
Parametri SMTP OVHcloud
Utilizza i seguenti parametri per il tuo account email MX Plan (incluso con l'hosting web):
Per le offerte Email Pro o Exchange, il server SMTP è diverso. Consulta la documentazione di ciascuna offerta per i parametri esatti.
Dove trovare le tue credenziali SMTP
Il nome utente SMTP è il tuo indirizzo email completo (ad esempio contact@mydomain.ovh).
La password è quella definita durante la creazione dell'indirizzo, o modificata dallo Spazio Cliente OVHcloud. Se l'hai dimenticata o desideri reimpostarla, consulta la guida Modifica la password di un indirizzo email.
L'offerta MX Plan inclusa con l'hosting web è soggetta a quote di invio (circa 200 email all'ora per account), indipendenti dalla quota della funzione mail() del tuo hosting. Il server SMTP OVHcloud accetta inoltre al massimo 300 email all'ora per indirizzo IP di origine. Su un hosting condiviso, questo indirizzo IP è condiviso con gli altri siti ospitati sullo stesso cluster: raggiungi quindi il limite più rapidamente rispetto all'invio dal tuo computer. Le soluzioni di posta non sono progettate per l'invio in grande quantità: per volumi elevati — newsletter o email transazionali — utilizza un servizio di terze parti dedicato a questo scopo.
Esempio di codice PHP con PHPMailer
PHPMailer è la libreria PHP di riferimento per l'invio di email tramite SMTP. Installala tramite Composer:
Ecco un esempio completo di invio SMTP autenticato:
Non memorizzare mai la password del tuo account email in chiaro in un file PHP versionato. Utilizza un file di configurazione escluso dal tuo repository Git (.gitignore).
Con questa configurazione, ogni email inviata dal tuo sito è:
- autenticata presso il server OVHcloud,
- autorizzata dal record SPF del tuo dominio e firmata DKIM se quest'ultimo è attivato,
- inviata da un solo account identificato, di cui controlli la password.
3. WordPress e altri CMS: utilizzare un plugin SMTP
3.1 Come WordPress invia le email di default
La funzione wp_mail() di WordPress utilizza in background la funzione PHP mail(), con un indirizzo From: definito da WordPress o da ciascun plugin. Questi invii rientrano quindi nella quota del tuo hosting e puoi monitorarli dallo Spazio Cliente OVHcloud.
Per un mittente fisso e autenticato su tutte le email del tuo sito, installa un plugin SMTP che sostituisce wp_mail() con una connessione SMTP autenticata verso il tuo server di posta OVHcloud.
3.2 Configurare WP Mail SMTP
WP Mail SMTP è il plugin più utilizzato per questa configurazione.
Installazione:
- Nella tua amministrazione WordPress, accedi a Plugin > Aggiungi nuovo plugin.
- Cerca
WP Mail SMTPe clicca su Installa ora, quindi su Attiva.
Configurazione:
- Accedi a WP Mail SMTP > Impostazioni nel menu di amministrazione.
- Nella sezione Mittente, compila i seguenti campi:
- Nella sezione Mailer, seleziona Altro SMTP.
- Compila i parametri SMTP:
- Clicca su Salva impostazioni.
- Nella scheda Strumenti, utilizza Test invio email per verificare la configurazione.
Attiva l'opzione Forza email del mittente affinché tutte le email in uscita utilizzino l'indirizzo configurato, anche se un plugin di terze parti tenta di utilizzarne un altro.
3.3 Alternativa: FluentSMTP
FluentSMTP è un'alternativa leggera e gratuita. La quota di invio del tuo account email si applica allo stesso modo.
Installazione:
- Nella tua amministrazione WordPress, accedi a Plugin > Aggiungi nuovo plugin.
- Cerca
FluentSMTPe clicca su Installa ora, quindi su Attiva.
Configurazione:
- Accedi a FluentSMTP > Impostazioni.
- Clicca su Aggiungi connessione e seleziona Altro SMTP.
- Compila gli stessi parametri di WP Mail SMTP:
- Clicca su Salva connessione, quindi invia un'email di test.
3.4 Altri CMS (Drupal, Joomla, PrestaShop)
Il principio è identico per qualsiasi CMS o framework: sostituisci la funzione di invio nativa con un modulo o una configurazione SMTP autenticata.
In tutti i casi, i parametri SMTP sono identici: server smtp.mail.ovh.net, porta 465 (SSL/TLS) o 587 (STARTTLS), con autenticazione tramite l'indirizzo email completo e la relativa password.
Per saperne di più
Gestire l'invio delle email automatiche
Specifiche tecniche degli hosting web
Migliora la sicurezza delle email con un record SPF
Migliora la sicurezza delle email con un record DKIM
Migliora la sicurezza delle email con un record DMARC
Per prestazioni specializzate (posizionamento, sviluppo, ecc.) contatta i partner di OVHcloud.
Se desideri ricevere assistenza sull'utilizzo e la configurazione delle tue soluzioni OVHcloud, ti invitiamo a consultare le nostre diverse offerte di supporto.
Contatta la nostra Community di utenti.