Ir al contenido principal

Función mail de PHP; funcionamiento, uso y recomendaciones


Función mail() de PHP

PHP permite enviar correos de forma muy sencilla usando la función mail(), con esta no requeriría más que una línea de código realizar envíos desde nuestra aplicación:
mail('email@destino.com', 'Título email', 'Mensaje');

Problemas generados por el uso de mail()

No obstante en su sencillez (la cual viene de los inicios del desarrollo del lenguaje de PHP) radica su principal problema.
A día de hoy el envío de SPAM (correo no deseado) es probablemente uno de los mayores problemas en la red y combatirlo se ha convertido en la lucha personal de todos los proveedores de correo, en esta tarea la función mail no es de demasiada ayuda.
Esta función permite de forma sencilla enviar correos falsificando el remitente del mensaje, de forma que se podría enviar un correo a un destinatario desde cualquier dirección que especifiquemos aunque no sea de nuestra propiedad.
Este funcionamiento que carece de cualquier tipo de veracidad hizo que los proveedores de correo establezcan determinados mecanismos para verificar que los correos son legítimos, para ello se requieren (entre otras cosas) una seríe de datos ocultos en las cabeceras de los correos enviados los cuales no son añadidos cuando se utiliza esta función.
En consecuencia, la mayoría de correos enviados por esta vía son clasificados como correo no deseado.
Tanto en desarrollos propios como en aplicaciones existentes (Wordpress, Joomla o Drupal), el uso de la función mail aparece como método de envío por defecto, no es una mala práctica si únicamente se enviarán notificaciones a uno mismo, pero cuando el correo se convierte en una prioridad (por ejemplo una tienda online que notifica los pedidos a los usuarios), el uso de este método debe ser descartado.

Correos enviados bajo autenticación SMTP

La alternativa es el envío de correos bajo autenticación SMTP, tendrías una cuenta de correo real, creada en cPanel, y esta se usaría para realizar el envío de correos desde la app de forma que esta conecta con el usuario y contraseña a dicha cuenta y la usa para el envío, realizando de esta forma un envío seguro y fiable.
Esto puede sonar complejo, no obstante la mayoría de aplicaciones ya cuenta con esta implementación, por ejemplo en el caso de Joomla simplemente se debe cambiar en las opciones para que use SMTP e indicar el usuario (cuenta de correo) y contraseña del correo que queremos usar para que realice los envíos.
En el caso de Wordpress simplemente tendríamos que instalar un plugin que implemente esta función, existen decenas, por ejemplo Easy WP SMTP.
Y para desarrollos propios tendríamos una librería que a día de hoy es prácticamente un estandar en el envío de correos, phpMailer

Comentarios

Entradas populares de este blog

Cómo particionar un disco duro en Windows usando herramientas integradas del sistema

¿Qué es una partición de disco? Una partición es una división lógica de un disco duro físico. Cada partición funciona como si fuera un disco independiente: puede tener su propia letra (C:, D:, E:), sistema de archivos y propósito. Ejemplos de uso comunes: Separar Windows de documentos personales Crear una partición exclusiva para respaldos Organizar información por áreas (trabajo, multimedia, proyectos) Antes de comenzar: recomendaciones importantes Antes de modificar particiones, ten en cuenta lo siguiente: 🔒 Haz copia de seguridad de la información importante ⚡ Evita realizar el proceso durante cortes de energía 🛑 No interrumpas el proceso una vez iniciado 💾 Asegúrate de tener espacio libre suficiente en el disco Aunque Windows es bastante seguro en este proceso, cualquier cambio en discos conlleva riesgos. Herramienta principal: Administración de discos Windows incluye la herramienta Administración de discos , que permite: Reducir volúmenes ...

Adobe Photoshop CC 2018 19.1.6.5940 (Español) #Descarga

Descarga : MEGA: 32bits / 64 bits http://j.gs/BmM9 Clave :  http://j.gs/BmMB ------------------- Otros enlaces: ------------------- Google Drive 64 Bits: http://j.gs/Blyw 32 Bits: http://j.gs/Blz3 MEGA 64 Bits: http://j.gs/Blz9 32 Bits: http://j.gs/Blz7 Clave para descomprimir: http://j.gs/6505620/clave Adobe Photoshop CC 2018  Programa  Full  de editor de gráficos rasterizados en su  ultima versión  y usado principalmente para el retoque de fotografías y gráficos, su nombre en español significa literalmente “taller de fotos” y esta disponible para  descargar  desde esta pagina. Adobe Photoshop  32 bits  y la versión de  64 bits  es líder mundial en el mercado de aplicaciones de edición de imágenes, y domina este sector de tal manera que su nombre es ampliamente empleado como sinónimo para la edición de imágenes en general. Una de las mejores aplicaciónes de edición de imágene...

SolidWorks 2015 SP3.0 Multilenguaje (Español), Modelado Avanzado con Sistemas CAD + Descarga

SolidWorks 2015 SP3.0 Multilenguaje ISO | 8.62 GB | Spanish Incl. | Medicina Incl. | Windows 7/8/8.1 x64 |  Descarga:  http://adf.ly/1Hf1tU SolidWorks le brinda opciones de software de CAD en 3D, simulación de diseño y administración de datos de productos, además de software de documentación de productos. No importa el tamaño de su empresa: siempre puede tener las herramientas precisas que necesita para diseñar mejores productos. Software de CAD en 3D El software de diseño en 3D de SolidWorks lo ayuda a diseñar mejores productos, más rápido. Cuando tenga una idea para un producto excelente, contará con las herramientas para diseñarlo en menos tiempo y a un costo más bajo. Estas son algunas de las funciones incluidas: Simulación de diseño Con las eficaces herramientas de simulación de diseño de SolidWorks®, fácilmente puede someter sus diseños a las mismas condiciones en las que se verán en el mundo real. Mejore la calidad de sus productos al mismo tiem...