For AI agents: the complete documentation index is available at https://docs.ovhcloud.com/es/llms.txt, the full documentation bundle is available at https://docs.ovhcloud.com/es/llms-full.txt, and this page is available as Markdown at https://docs.ovhcloud.com/es/guides/web-cloud/web-hosting/email-sending-best-practices.md.

Web hosting - Buenas prácticas de envío de correo electrónico

Ver como Markdown

Elija entre la función PHP mail() y el envío SMTP autenticado desde su alojamiento web, y configure el SMTP con su cuenta de correo electrónico OVHcloud

Objetivo

Su alojamiento web ofrece dos formas de enviar correos electrónicos desde su sitio: la función PHP mail() nativa, que utiliza los servidores de envío de su alojamiento, y el envío SMTP autenticado mediante una dirección de correo electrónico asociada a su dominio. Ambas son legítimas. mail() es el método por defecto: no requiere ninguna configuración, está sujeta a una cuota por alojamiento y se supervisa desde su área de cliente de OVHcloud. El SMTP autenticado es la alternativa cuando necesita controlar la identidad del remitente: la dirección From: está vinculada a una cuenta autenticada y el correo electrónico lleva la firma de su dominio. Sus cuotas se aplican por dirección de correo electrónico y por dirección IP de origen, compartida entre los sitios de un alojamiento compartido.

Esta guía le ayuda a elegir entre los dos métodos y le explica cómo configurar un envío SMTP autenticado desde un alojamiento compartido, ya sea que gestione un sitio WordPress, otro CMS o una aplicación PHP.

Requisitos


Acceso al área de cliente de OVHcloud

  • Enlace directo:
  • Ruta de navegación: Web Cloud > Alojamientos > Seleccione su alojamiento web

Procedimiento

1. mail() o SMTP autenticado: ¿cuál elegir?

Ambos métodos envían correos electrónicos desde su sitio web. Se diferencian en:

  • el servidor de envío del correo electrónico,
  • las limitaciones de envío,
  • cómo hacer su seguimiento.
PHP mail()SMTP autenticado
FuncionamientoEl script entrega el correo electrónico a los servidores de envío de su alojamiento. No se necesita ninguna configuración.El script se conecta al servidor de mensajería de OVHcloud con el identificador y la contraseña de una dirección de correo electrónico asociada a su dominio.
Cuota de envíoPor alojamiento y por hora, según su oferta. Consulte las Particularidades técnicas de los alojamientos web.Por dirección de correo electrónico y por hora (aproximadamente 200 correos electrónicos para una dirección MX Plan), más 300 correos electrónicos por hora y por dirección IP de origen en el servidor SMTP de OVHcloud. En un alojamiento compartido, la dirección IP saliente se comparte con los demás sitios del clúster.
SeguimientoDesde la pestaña Scripts de correo electrónico de su alojamiento en el área de cliente de OVHcloud: estadísticas, informes de errores, bloqueo y purga. Consulte la guía Gestionar los mensajes de correo automatizados.No visible en el área de cliente de OVHcloud. Realice el seguimiento de los envíos desde los registros (logs) de su aplicación.
Identidad del remitenteLa dirección From: la declara el script. Su dominio debe estar asociado a su alojamiento (multisitio); de lo contrario, el correo electrónico no puede autenticarse.La dirección From: debe corresponder a la cuenta autenticada. El correo electrónico se firma con DKIM si DKIM está activado para su dominio.
Uso habitualFormularios de contacto, notificaciones, cualquier script cuyo volumen se ajuste a la cuota del alojamiento.CMS con varios plugins que envían correos electrónicos, aplicaciones que requieren un remitente fijo y firmado, o dirección From: compartida con su buzón de correo.

Sea cual sea el método elegido:

  • Los servidores destinatarios (Gmail, Outlook, etc.) verifican que el dominio del From: autoriza al servidor de envío. Mantenga correctos sus registros SPF, DKIM y DMARC en su zona DNS.
  • Un envío abusivo o de spam desde su alojamiento o desde su dirección de correo electrónico provoca un bloqueo automático. Si sus correos electrónicos ya no se envían, consulte la guía Gestionar los mensajes de correo automatizados.
  • El tamaño total de un correo electrónico no puede superar los 10 MB, encabezados y codificación incluidos.

Formularios abiertos: un vector de abuso para ambos métodos

Un formulario de contacto accesible públicamente, sin mecanismo de protección, es un objetivo preferente para los robots. Los robots lo aprovechan para enviar miles de correos electrónicos en pocos minutos a través de su alojamiento: la IP compartida se bloquea y todos los clientes del clúster lo sufren.

Implemente las siguientes protecciones en cualquier formulario que desencadene un envío de correo electrónico:

  • Captcha: integre un sistema de verificación (Google reCAPTCHA v3, hCaptcha o un cálculo aritmético sencillo) para bloquear los envíos automatizados.
  • Limitación de la tasa: limite el número de envíos por dirección IP en el servidor para evitar los abusos en ráfaga.
  • Validación estricta de las entradas: depure todos los campos del formulario antes de utilizarlos en un correo electrónico; nunca confíe en los datos introducidos por el usuario.
Warning

La ausencia de captcha en un formulario de envío abierto es una de las causas más frecuentes de bloqueo de los alojamientos compartidos por envío de spam. Esta protección es indispensable sea cual sea el método de envío que utilice.

2. Configurar el envío SMTP autenticado con una cuenta de correo electrónico OVHcloud

Principio

Envíe sus correos electrónicos mediante una conexión SMTP autenticada al servidor de mensajería de OVHcloud, utilizando una cuenta de correo electrónico asociada a su dominio (por ejemplo, contact@mydomain.ovh).

Este enfoque tiene tres ventajas:

  • Autenticación garantizada: el servidor OVHcloud verifica su identidad antes de aceptar el correo electrónico.
  • SPF y DKIM: el correo electrónico es emitido por un servidor autorizado para su dominio y firmado con DKIM si DKIM está activado para su dominio.
  • Una única cuenta identificada: cada envío está vinculado a una única dirección de correo electrónico, cuya contraseña puede cambiar en cualquier momento para detener un script o un plugin abusivo.

Envío con mail(): el dominio debe estar asociado a su alojamiento

Para enviar correos electrónicos desde su alojamiento web con la función PHP mail(), el dominio utilizado en el campo From: debe estar asociado a su alojamiento.

Este dominio no tiene que gestionarse desde su cuenta de OVHcloud: puede utilizar un dominio registrado con otro agente registrador, siempre que esté asociado a su alojamiento web, ya que es esa asociación la que le autoriza a enviar correos electrónicos en nombre de ese dominio.

Tip

Si su dominio aún no está asociado a su alojamiento, añádalo como multisitio desde su área de cliente de OVHcloud y compruebe después la configuración DNS asociada. Consulte la guía Alojar varios sitios web en un mismo hosting.

Warning

Un envío realizado para un dominio que no está asociado a su alojamiento no puede autenticarse: se trata como un envío no autenticado, por lo que será rechazado y registrado como error.

Por qué el campo From: debe pertenecer a su dominio

El campo From: de su correo electrónico debe obligatoriamente contener una dirección que pertenezca a su dominio (por ejemplo, contact@mydomain.ovh), y esta dirección debe corresponder a la cuenta SMTP utilizada para la autenticación.

Si el campo From: no corresponde al dominio autorizado en el registro SPF, o si la firma DKIM no coincide, los servidores de mensajería destinatarios (Gmail, Outlook, etc.) pueden rechazar el correo electrónico o clasificarlo como spam.

Tip

Para maximizar la entregabilidad, compruebe que los registros SPF, DKIM y DMARC estén correctamente configurados en su zona DNS. Gmail y Yahoo Mail los exigen ahora para los remitentes de gran volumen. Consulte nuestras guías:

Formularios de contacto: campo From: fijo y Reply-To: del usuario

Un error frecuente: colocar la dirección de correo electrónico introducida por el usuario en el formulario directamente en el campo From:. Por ejemplo, un visitante introduce usuario@gmail.com y el script utiliza esta dirección como remitente.

Este comportamiento es incorrecto por dos razones:

  • El registro SPF de su dominio no autoriza a los servidores de Gmail (o de cualquier otro proveedor externo) a enviar en su nombre → fallo del control SPF.
  • Está enviando "en nombre de" una dirección que no le pertenece → alto riesgo de clasificación como spam o de rechazo.

El esquema correcto para un formulario de contacto:

Campo de correo electrónicoValorFunción
From:contact@mydomain.ovh (dirección fija del sitio)Remitente autenticado, nunca cambia
Reply-To:Dirección introducida por el usuario en el formularioPermite responder directamente al usuario
Subject:Asunto del mensaje, con prefijo (por ejemplo, [Contact])Identifica fácilmente los mensajes del formulario

Cuando responda, su cliente de mensajería utilizará en su lugar la dirección del campo Reply-To:, sin comprometer la autenticación SPF/DKIM.

A continuación se muestra cómo adaptar el ejemplo de PHPMailer para un formulario de contacto:

// Datos proporcionados por el usuario (validar y depurar antes de usarlos)
$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: siempre fijo — la dirección de su sitio, nunca la del usuario
$mail->setFrom('contact@mydomain.ovh', 'My Website');

// Reply-To: la dirección del usuario, para poder responderle directamente
$mail->addReplyTo($userEmail, $userName);

// Destinatario: usted mismo (recibe el mensaje del formulario)
$mail->addAddress('contact@mydomain.ovh', 'My Website');

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

Nunca pase directamente los datos de un formulario a PHPMailer sin validación previa. Utilice filter_var() para la dirección de correo electrónico y htmlspecialchars() + strip_tags() para los campos de texto, con el fin de evitar las inyecciones de encabezados de correo electrónico.

Parámetros SMTP de OVHcloud

Utilice los siguientes parámetros para su cuenta de correo electrónico MX Plan (incluida con el alojamiento web):

ParámetroValor
Servidor SMTPsmtp.mail.ovh.net
Puerto (SSL/TLS)465 (recomendado)
Puerto (STARTTLS)587
CifradoSSL/TLS (puerto 465) o STARTTLS (puerto 587)
AutenticaciónObligatoria
Nombre de usuarioDirección de correo electrónico completa (por ejemplo, contact@mydomain.ovh)
ContraseñaContraseña de la cuenta de correo electrónico OVHcloud
Tip

Para las ofertas Email Pro o Exchange, el servidor SMTP es diferente. Consulte la documentación de cada oferta para conocer los parámetros exactos.

Dónde encontrar sus credenciales SMTP

El nombre de usuario SMTP es su dirección de correo electrónico completa (por ejemplo, contact@mydomain.ovh).

La contraseña es la que definió al crear la dirección, o la que modificó desde el área de cliente de OVHcloud. Si la ha olvidado o desea restablecerla, consulte la guía Cambiar la contraseña de una dirección de correo.

Warning

La oferta MX Plan incluida con el alojamiento web está sujeta a cuotas de envío (aproximadamente 200 correos electrónicos por hora y por cuenta), independientes de la cuota de la función mail() de su alojamiento. El servidor SMTP de OVHcloud también acepta como máximo 300 correos electrónicos por hora y por dirección IP de origen. En un alojamiento compartido, esta dirección IP se comparte con los demás sitios alojados en el mismo clúster, por lo que alcanzará el límite más rápidamente que desde su propio ordenador. Las soluciones de mensajería no están diseñadas para el envío masivo: para volúmenes importantes, como newsletters o correos electrónicos transaccionales masivos, utilice un servicio de envío transaccional externo dedicado.

Ejemplo de código PHP con PHPMailer

PHPMailer es la biblioteca PHP de referencia para el envío de correos electrónicos mediante SMTP. Instálela a través de Composer:

composer require phpmailer/phpmailer

A continuación se muestra un ejemplo completo de envío SMTP autenticado:

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

require 'vendor/autoload.php';

$mail = new PHPMailer(true);

try {
    // Parámetros del servidor SMTP de OVHcloud
    $mail->isSMTP();
    $mail->Host       = 'smtp.mail.ovh.net';
    $mail->SMTPAuth   = true;
    $mail->Username   = 'contact@mydomain.ovh'; // Su dirección de correo electrónico de OVHcloud
    $mail->Password   = 'your_password';         // Contraseña de la cuenta de correo electrónico
    $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS; // SSL/TLS
    $mail->Port       = 465;

    // Remitente: debe pertenecer a su dominio
    $mail->setFrom('contact@mydomain.ovh', 'My Website');
    $mail->addReplyTo('contact@mydomain.ovh', 'My Website');

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

    // Contenido
    $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

Nunca almacene la contraseña de su cuenta de correo electrónico en texto plano en un archivo PHP versionado. Utilice un archivo de configuración excluido de su repositorio Git (.gitignore).

Info

Con esta configuración, cada correo electrónico enviado desde su sitio es:

  • autenticado ante el servidor OVHcloud,
  • autorizado por el registro SPF de su dominio y firmado con DKIM si este está activado,
  • emitido por una única cuenta identificada, cuya contraseña controla usted.

3. WordPress y otros CMS: utilizar un plugin SMTP

3.1 Cómo envía WordPress los correos electrónicos por defecto

La función wp_mail() de WordPress utiliza en segundo plano la función PHP mail(), con una dirección From: definida por WordPress o por cada plugin. Por tanto, estos envíos se descuentan de la cuota de su alojamiento y puede supervisarlos desde el área de cliente de OVHcloud.

Para tener un remitente fijo y autenticado en todos los correos electrónicos de su sitio, instale un plugin SMTP que sustituya wp_mail() por una conexión SMTP autenticada a su servidor de mensajería OVHcloud.

3.2 Configurar WP Mail SMTP

WP Mail SMTP es el plugin más utilizado para esta configuración.

Instalación:

  1. En su administración de WordPress, acceda a Plugins > Añadir nuevo plugin.
  2. Busque WP Mail SMTP y haga clic en Instalar ahora y, a continuación, en Activar.

Configuración:

  1. Acceda a WP Mail SMTP > Ajustes en el menú de administración.
  2. En la sección Remitente, rellene los siguientes campos:
CampoValor
Correo electrónico del remitentecontact@mydomain.ovh (dirección que pertenece a su dominio)
Nombre del remitenteNombre mostrado para su sitio (por ejemplo, Mi sitio web)
  1. En la sección Mailer, seleccione Otro SMTP.
  2. Rellene los parámetros SMTP:
CampoValor
Host SMTPsmtp.mail.ovh.net
CifradoSSL/TLS
Puerto SMTP465
AutenticaciónActivada
Nombre de usuario SMTPcontact@mydomain.ovh
Contraseña SMTPContraseña de su cuenta de correo electrónico OVHcloud
  1. Haga clic en Guardar ajustes.
  2. En la pestaña Herramientas, utilice Prueba de envío de correo electrónico para verificar la configuración.
Tip

Active la opción Forzar el correo electrónico del remitente para que todos los correos electrónicos salientes utilicen la dirección configurada, incluso si un plugin externo intenta usar otra.

3.3 Alternativa: FluentSMTP

FluentSMTP es una alternativa ligera y gratuita. La cuota de envío de su cuenta de correo electrónico se aplica de la misma forma.

Instalación:

  1. En su administración de WordPress, acceda a Plugins > Añadir nuevo plugin.
  2. Busque FluentSMTP y haga clic en Instalar ahora y, a continuación, en Activar.

Configuración:

  1. Acceda a FluentSMTP > Ajustes.
  2. Haga clic en Añadir conexión y seleccione Otro SMTP.
  3. Rellene los mismos parámetros que para WP Mail SMTP:
CampoValor
Hostsmtp.mail.ovh.net
Puerto465
CifradoSSL/TLS
Autenticación
Nombre de usuariocontact@mydomain.ovh
ContraseñaContraseña de su cuenta de correo electrónico OVHcloud
Correo electrónico del remitentecontact@mydomain.ovh
  1. Haga clic en Guardar conexión y, a continuación, envíe un correo electrónico de prueba.

3.4 Otros CMS (Drupal, Joomla, PrestaShop)

El principio es idéntico para cualquier CMS o framework: sustituya la función de envío nativa por un módulo o una configuración SMTP autenticada.

CMSMódulo recomendado
DrupalSMTP Authentication Support
JoomlaConfiguración nativa: Sistema > Configuración global > pestaña Servidor > sección Ajustes de correo
PrestaShopParámetros avanzados > Correo electrónico — seleccionar Utilizar mis propios parámetros SMTP

En todos los casos, los parámetros SMTP son idénticos: servidor smtp.mail.ovh.net, puerto 465 (SSL/TLS) o 587 (STARTTLS), con autenticación mediante la dirección de correo electrónico completa y su contraseña.

Más información

Gestionar los mensajes de correo automatizados

Particularidades técnicas de los alojamientos web

Mejorar la seguridad del correo electrónico mediante el registro SPF

Mejorar la seguridad del correo electrónico mediante un registro DKIM

Mejorar la seguridad del correo electrónico mediante el registro DMARC

Para prestaciones especializadas (posicionamiento, desarrollo, etc.), contacte con los partners de OVHcloud.

Si desea asistencia para el uso y configuración de sus soluciones OVHcloud, le proponemos que consulte nuestras diferentes ofertas de soporte.

Interactúe con nuestra comunidad de usuarios.

¿Le ha resultado útil esta página?