¿Cómo configurar php.ini y sendmail.ini para poder enviar correos desde tu servidor local en Windows con Xampp, a través de una cuenta Gmail ?
Tal vez hayas querido probar alguna programación como formularios con envío de correos en tu servidor local, y te saltó este mensaje en el explorador "Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in..." . Yo estuve varios días tratando de resolverlo y finalmente pude hacerlo, modificando no solo el php.ini, sino también el sendmail.ini . Paso a explicar
Una vez que hayas configurado correctamente tu servidor de correos (yo seguí hasta el paso 7 inclusive de este sitio y me funcionó)y hayas comprobado directamente en el Mercury que podés enviar correos sin problemas, tenés que modificar el php.ini. Yo lo tengo en C:/xampp/php, pero tal vez lo tengas en otra carpeta dentro de xampp (como en xampp/apache/bin). Una vez allí hay que ir a [mail function] y poner
Código :
; For Win32 only. SMTP = smtp.gmail.com smtp_port =465 ; For Win32 only. sendmail_from = (tu usuario)@gmail.com ; For Unix only. You may supply arguments as well (default: "sendmail -t -i"). ; http://php.net/sendmail-path sendmail_path = "C:\xampp\sendmail\sendmail.exe -t"
Esta última linea es importante, tenés que agregarla, o descomentarla si es que ya está escrita.
Después hay que ir a sendmail.ini (yo lo tengo en C:/ xampp/sendmail/ )y poner:
Código :
# Example for a user configuration file # Set default values for all following accounts. defaults logfile "C:\xampp\sendmail\sendmail.log" # Mercury account Mercury host localhost from postmaster@localhost auth off # A freemail service example account Gmail tls on tls_certcheck off host smtp.gmail.com from (tu usuario)@gmail.com auth on user (tu usuario)@gmail.com password (tu contraseña) # Set a default account account default :Gmail
Y listo, para probar que funciona podés hacer un php que se llame "pruebamail.php"y lo guardás en htdocs, dentro de tu carpeta xampp, con esta línea
Código :
<?php mail("cualquier [email protected]", "Comprobación Email", "Si lees el mensaje, terminaste correctamente la configuración"); ?>
Prueba el php en el explorador (o sea, pones en la barra de direcciones http://localhost/pruebamail.php)
Si el correo te llega, funciona!
¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.
Por JulioRFA el 11 de Septiembre de 2010
Saludos
Por Blackdragon el 11 de Septiembre de 2010
Bien hecho!
Por vanvanero el 11 de Septiembre de 2010
Por igualacero el 11 de Septiembre de 2010
Por Mago.ozkuro el 12 de Septiembre de 2010
Por XKlibur el 12 de Septiembre de 2010
Gracias por compartir la información.
Por xcom el 12 de Septiembre de 2010
Por torrealbaruben el 13 de Septiembre de 2010
Por Lord Zero el 13 de Septiembre de 2010
Muchas gracias!
Por pepeeltoro el 15 de Octubre de 2010
Por CLAnonimo el 25 de Octubre de 2010
Por defleppard86 el 25 de Noviembre de 2010
Por perdida el 12 de Enero de 2011
Por Dan el 17 de Mayo de 2011
gracias y espero me puedan ayudar.
Por CarlosR el 19 de Agosto de 2011
Por amilkar el 23 de Agosto de 2011
igual en send mail
send mail y
semail_example
Por jall el 26 de Agosto de 2011
Por el 15 de Noviembre de 2011
Por dcm el 07 de Marzo de 2012
Por Leandro el 28 de Junio de 2012
La aplicación le corro así:
<code>
<?php
mail("micuentaprueba@gmail", "Comprobación Email", "Si lees el mensaje terminaste correctamente la configuración");
echo"Hola";
?>
</code>
Me aparece correctamente el Hola, pero nada que envia el correo electrónico!!! que puede pasar???
Por qwert el 26 de Marzo de 2013
Por Rosa el 08 de Enero de 2014
Por hoo el 16 de Enero de 2014
Por Luqi el 06 de Mayo de 2014
Por Lt23 el 05 de Junio de 2014
Por José Antonio el 24 de Septiembre de 2014
Por Oscar el 10 de Octubre de 2015
Tengo una pagina web en mi PC en G:\sitio con su archivo index.html con un formulario clásico (nombres, apellido, teléfono, comentario) además ya he configurado el archivo php.ini y el sendmail.ini de acuerdo a las instrucciones, y tengo el archivo enviar_correo.php que contiene la cabecera y en general el codigo (<?php mail("cualquier [email protected]", "Comprobación Email", "Si lees el mensaje, terminaste correctamente la configuración"); ?>).
La pregunta es ¿donde coloco el archivo enviar_correo.php? ¿lo coloco en c:\ C:\wamp\sendmail? o en la ruta donde tengo mi archivo index.html que es la ruta de mi sito local que es G:\sitio?.
Gracias por su ayuda.