sábado, 29 de junio de 2019

Correo con PHP (SENDMAIL y WAMP)

Correo con php

Cómo hacerlo de manera sencilla:

  • Primero de qué dominio vienes (ejemplo: hotmail.com)
  • Cuál es el dns, que lleva a la ip (ejemplo: 127.0.0.1)
  • Este control puede marcar el correo como SPAM, por no pasar estas reglas de control
  • Con un dominio válido, se puede pasar los controles


Otra forma es encajonando el php con un dominio de correo (ejemplo: gmail, outlook)

En XAMPP, algunos WAMP, existe la carpeta sendmail. Que es un producto con dll y ejecutables, se puede descargar de internet y configurarlo en WAMP o XAMPP a la vez, en caso no venga instalado.

Descargarlo de sendmail.exe: https://www.glob.com.au/sendmail/

SENDMAIL

Una vez descargado se encontrarán los siguientes archivos:



Los dll y archivos de configuración mínimos necesarios para correr SENDMAIL en WAMP son:



Configuración

En php.ini

Cambiar las líneas:
  1. SMTP = localhost
  2. smtp_port = 25
  3. sendmail_from ="admin@wampserver.invalid"
  4. ; sendmail_path =

Por:
  1. ; SMTP = localhost
  2. ; smtp_port = 25
  3. ; sendmail_from ="admin@wampserver.invalid"
  4. sendmail_path = "E:/wamp64/sendmail/sendmail.exe - t"

La ruta: "E:/wamp64/sendmail/sendmail.exe - t" dependerá de donde se descomprimió el SENDMAIL.

En sendmail.ini

Cambiar las líneas:
  1. smtp_server=mail.mydomain.com
  2. smtp_port=25
  3. ; default_domain=
  4. auth_username=
  5. auth_password=
  6. force_sender=

Por:
  1. smtp_server=smtp.gmail.com
  2. smtp_port=587
  3. default_domain=localhost
  4. auth_username=correo@dom.com
  5. auth_password=contraseña
  6. force_sender=correo@dom.com

Guardar los archivos modificados y reiniciar el WAMP

Prueba


Crear el siguiente archivo (correo.php) y ejecutarlo:
  1. <?php
  2. $destino="tu_correo@dom.com";
  3. $titulo="Prueba de correo";
  4. $mensaje="Este el el mensaje de prueba";
  5. $x = mail($destino, $titulo, $mensaje);
  6. if($x==1){
  7. echo "Mensaje enviado";
  8. } else {
  9. echo "Error al enviar";
  10. }

Puede ser que no se envíe el correo, llegará al correo (que se configuró en el SENDMAIL) el siguiente mensaje:

Permitir que envíe y funcionará

No hay comentarios:

Publicar un comentario