---
title: "Hosting Web - Buone pratiche per l'invio delle email"
description: "Scopri perché la funzione PHP mail() è sconsigliata su un hosting condiviso e come configurare un invio SMTP autenticato"
url: https://docs.ovhcloud.com/it/guides/web-cloud/web-hosting/email-sending-best-practices
lang: it
lastUpdated: 2026-07-15
---
# Hosting Web - Buone pratiche per l'invio delle email

## Obiettivo

Affinché le tue email arrivino correttamente ai destinatari, OVHcloud mette a disposizione un’infrastruttura dedicata all’invio in uscita, con filtraggio anti-spam automatico e monitoraggio continuo della reputazione dei server. Per sfruttarla pienamente, è consigliato inviare le tue email tramite **SMTP autenticato** anziché tramite la funzione PHP `mail()` nativa. Questo approccio garantisce che ogni email venga inviata con un’identità verificabile, migliorando in modo significativo la recapitabilità e riducendo il rischio di finire nello spam.

**Questa guida ti presenta le buone pratiche e le raccomandazioni OVHcloud per inviare email in modo affidabile e sicuro 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](https://www.ovhcloud.com/it/web-hosting/).
- Disporre di un indirizzo email associato al tuo nome a dominio (<Region zones={['eu']}>offerta MX Plan, Email Pro o Exchange</Region><Region zones={['ca']}>offerta MX Plan o Exchange</Region><Region zones={['apac']}>offerta MX Plan</Region>). Se non ne hai ancora uno, consulta la guida [Creare un account email con MX Plan](/it/guides/web-cloud/email-and-collaborative-solutions/mx-plan/email-creation.md).


***

### Accesso allo Spazio Cliente OVHcloud

- **Link diretto:** <ManagerLink to="/#/web/hosting">Hosting</ManagerLink>
- **Percorso di navigazione:** <code className="action">Web Cloud</code> > <code className="action">Hosting</code> > Seleziona il tuo hosting web

***


## Procedura

### 1. `mail()` o SMTP autenticato: qual è la differenza per te?

#### Cosa fa OVHcloud per proteggere i tuoi invii

OVHcloud monitora costantemente la reputazione dei suoi server di invio e filtra automaticamente i messaggi sospetti, affinché le tue email legittime non ne risentano. Ma questa protezione ha un limite: la funzione PHP `mail()` non effettua alcun controllo sull’identità del mittente dichiarato nell’email (campo `From:`). Un’email inviata tramite `mail()` può quindi sembrare provenire da qualsiasi indirizzo, e questo è sufficiente ad attivare i filtri dei server destinatari (Gmail, Outlook, ecc.) e a compromettere la recapitabilità dei **tuoi stessi invii**.

#### Email senza una firma affidabile

La funzione `mail()` invia email senza garantire l’identità del mittente. I server destinatari (Gmail, Outlook, ecc.) verificano invece che l’email provenga effettivamente da un server autorizzato dal tuo dominio, grazie ai record **SPF** e **DKIM**. Con `mail()`, questa verifica spesso fallisce: il messaggio rischia allora di finire nello spam o di essere rifiutato.

L’invio tramite SMTP autenticato risolve questo problema: l’email viene inviata dal server OVHcloud autorizzato per il tuo dominio, con la firma corretta.

:::warning
Un uso abusivo della funzione `mail()` può comportare il blocco automatico degli invii per il tuo hosting. Se noti che le tue email non partono più, consulta la guida [Gestire l’invio delle email automatiche](/it/guides/web-cloud/web-hosting/mail-function-script-records.md).
:::

#### Moduli aperti: un ulteriore vettore di abuso

Un modulo di contatto accessibile pubblicamente, senza alcun meccanismo di protezione, è un bersaglio privilegiato per i bot. Questi lo sfruttano per generare l’invio di migliaia di email in pochi minuti tramite il tuo hosting, provocando il blocco dell’IP condiviso e danneggiando tutti i clienti del cluster.

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**: verifica e ripulisci tutti i campi del modulo prima di utilizzarli in un’email, non fidarti mai dei dati inseriti dall’utente.

:::warning
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 utilizzato.
:::

### 2. La buona pratica: utilizzare un account email OVHcloud con SMTP autenticato

#### 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 presenta tre vantaggi principali:

- **Autenticazione garantita**: il server OVHcloud verifica la tua identità prima di accettare l’email.
- **SPF e DKIM funzionanti**: l’email viene inviata da un server autorizzato per il tuo dominio e firmata correttamente.
- **Tracciabilità**: ogni invio è associato a un account identificato, il che consente di intervenire rapidamente in caso di abuso.

#### 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.

:::tip
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:

- [Migliora la sicurezza delle email con un record SPF](/it/guides/web-cloud/domains/dns-zone-spf.md)
- [Migliora la sicurezza delle email con un record DKIM](/it/guides/web-cloud/domains/dns-zone-dkim.md)
- [Migliora la sicurezza delle email con un record DMARC](/it/guides/web-cloud/domains/dns-zone-dmarc.md)

:::

#### Moduli di contatto: campo `From:` fisso e `Reply-To:` dell’utente

Un errore frequente consiste nell’inserire l’indirizzo email digitato dall’utente nel modulo direttamente nel campo `From:`. 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:**

| Campo email | Valore                                                       | Ruolo                                          |
| ----------- | ------------------------------------------------------------ | ---------------------------------------------- |
| `From:`     | `contact@mydomain.ovh` (indirizzo fisso del sito)            | Mittente autenticato — non cambia mai          |
| `Reply-To:` | Indirizzo inserito dall’utente nel modulo                    | Consente di rispondere direttamente all’utente |
| `Subject:`  | Oggetto del messaggio, con prefisso (ad esempio `[Contact]`) | Identifica facilmente i messaggi del modulo    |

In questo modo, quando rispondi all’email ricevuta, il tuo client di posta invia la risposta all’indirizzo dell’utente tramite il campo `Reply-To:`, senza compromettere l’autenticazione SPF/DKIM.

Ecco come adattare l’esempio PHPMailer per un modulo di contatto:

```php
// Dati forniti dall'utente (validare e sanificare prima dell'uso)
$userEmail = filter_var($_POST['email'], FILTER_VALIDATE_EMAIL);
$userName  = htmlspecialchars(strip_tags($_POST['name']));
$message   = htmlspecialchars(strip_tags($_POST['message']));

if (!$userEmail) {
    die('Invalid email address.');
}

// From: sempre fisso — l'indirizzo del tuo sito, mai quello dell'utente
$mail->setFrom('contact@mydomain.ovh', 'My Website');

// Reply-To: l'indirizzo dell'utente, per potergli rispondere direttamente
$mail->addReplyTo($userEmail, $userName);

// Destinatario: te stesso (ricevi il messaggio del modulo)
$mail->addAddress('contact@mydomain.ovh', 'My Website');

$mail->Subject = '[Contact] ' . $userName;
$mail->Body    = "Name: $userName\nEmail: $userEmail\n\nMessage:\n$message";
```

:::tip
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):

| Parametro            | Valore                                                       |
| -------------------- | ------------------------------------------------------------ |
| **Server SMTP**      | `smtp.mail.ovh.net`                                          |
| **Porta (SSL/TLS)**  | `465` _(consigliata)_                                        |
| **Porta (STARTTLS)** | `587`                                                        |
| **Crittografia**     | `SSL/TLS` (porta 465) o `STARTTLS` (porta 587)               |
| **Autenticazione**   | Obbligatoria                                                 |
| **Nome utente**      | Indirizzo email completo (ad esempio `contact@mydomain.ovh`) |
| **Password**         | Password dell’account email OVHcloud                         |


:::tip
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](/it/guides/web-cloud/email-and-collaborative-solutions/mx-plan/email-change-password.md).

:::warning
L’offerta MX Plan inclusa con l’hosting web è soggetta a **quote di invio** (circa 200 email all’ora per account). Le soluzioni di posta non sono progettate per l’invio in grande quantità: per volumi elevati — newsletter o email transazionali in grande quantità — utilizza un servizio di invio transazionale di terze parti, dedicato a questo scopo.
:::

#### Esempio di codice PHP con PHPMailer

[PHPMailer](https://github.com/PHPMailer/PHPMailer) è la libreria PHP di riferimento per l’invio di email tramite SMTP. Installala tramite Composer:

```bash
composer require phpmailer/phpmailer
```

Ecco un esempio completo di invio SMTP autenticato:

```php
<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;

require 'vendor/autoload.php';

$mail = new PHPMailer(true);

try {
    // Impostazioni del server SMTP OVHcloud
    $mail->isSMTP();
    $mail->Host       = 'smtp.mail.ovh.net';
    $mail->SMTPAuth   = true;
    $mail->Username   = 'contact@mydomain.ovh'; // Il tuo indirizzo email OVHcloud
    $mail->Password   = 'your_password';         // Password dell'account email
    $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS; // SSL/TLS
    $mail->Port       = 465;

    // Mittente: deve appartenere al tuo dominio
    $mail->setFrom('contact@mydomain.ovh', 'My Website');
    $mail->addReplyTo('contact@mydomain.ovh', 'My Website');

    // Destinatario
    $mail->addAddress('mary.johnson@example.com', 'Recipient Name');

    // Contenuto
    $mail->isHTML(true);
    $mail->Subject = 'Your email subject';
    $mail->Body    = 'Email body in <b>HTML</b>';
    $mail->AltBody = 'Email body in plain text (fallback)';

    $mail->send();
    echo 'Email sent successfully.';
} catch (Exception $e) {
    echo "Error while sending: {$mail->ErrorInfo}";
}
```


:::warning
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`).
:::

:::info
Con questa configurazione, ogni email inviata dal tuo sito è:

- **autenticata** presso il server OVHcloud,
- **firmata** con i record SPF e DKIM del tuo dominio,
- **tracciabile** in caso di abuso o problema di recapitabilità.

:::

### 3. WordPress e altri CMS: utilizzare un plugin SMTP

#### 3.1 Il problema con WordPress di default

La funzione `wp_mail()` di WordPress utilizza in background la funzione PHP `mail()`. Eredita quindi tutti i problemi descritti nella sezione precedente: assenza di autenticazione, `From:` non controllato, rischio di spam.

La soluzione consiste nell’installare 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](https://it.wordpress.org/plugins/wp-mail-smtp/) è il plugin più utilizzato per questa configurazione.

**Installazione:**

1. Nella tua amministrazione WordPress, accedi a **Plugin** > **Aggiungi nuovo plugin**.
2. Cerca `WP Mail SMTP` e clicca su **Installa ora**, quindi su **Attiva**.

**Configurazione:**

1. Accedi a **WP Mail SMTP** > **Impostazioni** nel menu di amministrazione.
2. Nella sezione **Mittente**, compila i seguenti campi:

| Campo                  | Valore                                                           |
| ---------------------- | ---------------------------------------------------------------- |
| **Email del mittente** | `contact@mydomain.ovh` (indirizzo appartenente al tuo dominio)   |
| **Nome del mittente**  | Nome visualizzato per il tuo sito (ad esempio `Il mio sito web`) |

3. Nella sezione **Mailer**, seleziona **Altro SMTP**.
4. Compila i parametri SMTP:

| Campo                | Valore                                  |
| -------------------- | --------------------------------------- |
| **Host SMTP**        | `smtp.mail.ovh.net`                     |
| **Crittografia**     | `SSL/TLS`                               |
| **Porta SMTP**       | `465`                                   |
| **Autenticazione**   | Attivata                                |
| **Nome utente SMTP** | `contact@mydomain.ovh`                  |
| **Password SMTP**    | Password del tuo account email OVHcloud |


5. Clicca su **Salva impostazioni**.
6. Nella scheda **Strumenti**, utilizza **Test invio email** per verificare la configurazione.

:::tip
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](https://it.wordpress.org/plugins/fluent-smtp/) è un’alternativa leggera e gratuita, senza limitazioni sul volume di invio.

**Installazione:**

1. Nella tua amministrazione WordPress, accedi a **Plugin** > **Aggiungi nuovo plugin**.
2. Cerca `FluentSMTP` e clicca su **Installa ora**, quindi su **Attiva**.

**Configurazione:**

1. Accedi a **FluentSMTP** > **Impostazioni**.
2. Clicca su **Aggiungi connessione** e seleziona **Altro SMTP**.
3. Compila gli stessi parametri di WP Mail SMTP:

| Campo              | Valore                                  |
| ------------------ | --------------------------------------- |
| **Host**           | `smtp.mail.ovh.net`                     |
| **Porta**          | `465`                                   |
| **Crittografia**   | `SSL/TLS`                               |
| **Autenticazione** | Sì                                      |
| **Nome utente**    | `contact@mydomain.ovh`                  |
| **Password**       | Password del tuo account email OVHcloud |
| **Email mittente** | `contact@mydomain.ovh`                  |


4. 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: sostituire la funzione di invio nativa con un modulo o una configurazione SMTP autenticata.

| CMS            | Modulo consigliato                                                                                                  |
| -------------- | ------------------------------------------------------------------------------------------------------------------- |
| **Drupal**     | [SMTP Authentication Support](https://www.drupal.org/project/smtp)                                                  |
| **Joomla**     | Configurazione nativa: **Sistema** > **Configurazione globale** > scheda **Server** > sezione **Impostazioni mail** |
| **PrestaShop** | **Parametri avanzati** > **Email** — scegliere **Utilizza i miei parametri SMTP**                                   |

In tutti i casi, i parametri SMTP da utilizzare 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](/it/guides/web-cloud/web-hosting/mail-function-script-records.md)

[Migliora la sicurezza delle email con un record SPF](/it/guides/web-cloud/domains/dns-zone-spf.md)

[Migliora la sicurezza delle email con un record DKIM](/it/guides/web-cloud/domains/dns-zone-dkim.md)

[Migliora la sicurezza delle email con un record DMARC](/it/guides/web-cloud/domains/dns-zone-dmarc.md)

Per prestazioni specializzate (posizionamento, sviluppo, ecc.) contatta i [partner di OVHcloud](https://partner.ovhcloud.com/it/directory/).

Se desideri ricevere assistenza sull’utilizzo e la configurazione delle tue soluzioni OVHcloud, ti invitiamo a consultare le nostre diverse [offerte di supporto](https://www.ovhcloud.com/it/support-levels/).

Contatta la nostra [Community di utenti](https://community.ovhcloud.com/).
