Con los siguientes pasos podrás configurar tu Mercury/32 que viene con xampp para enviar emails a correos externos desde tu servidor.
- Iniciamos el Mercury/32 desde el panel del xampp y damos al botón Admin. Se iniciará el panel de control del Mercury/32.
- Vamos a Configuration/Protocol Modules y desactivamos “MercuryB HTTP web server” y “Mercury IMAP4rev1 server”. Para mandar emails a correos externos desactivamos “MercuryE SMTP end-to-end delivery client” y en cambio activamos “MercuryC SMTP relaying client”. Damos al Ok y reiniciamos el Mercury.
- Volvemos a la consola del Mercury y vamos a Configuration/Mercury core module y en nos ponemos en la pestaña General. En “internet name for this system” ponemos el dominio que tenemos en nuestro servidor, ya sea localhost, yo como lo oriento a la instalación del wordpress MU con buddyPress necesito poner el dominio que elegí: localhost.wordpress, pero en general, para el resto de los mortales pondremos localhost. Los otros campos están ya configurados, sólo tenemos que desactivar todos los check de abajo menos “Send copies of all errors to postmaster”. Vamos a la pestaña “Local domains” y añadimos el internet name, para el resto de los mortales con servidor localhost ya estará añadido, para los que queremos que funcione con wordpress MU y BuddyPress añadimos localhost.wordpress (o el que hayas elegido en la configuración del wordpress MU). Damos a Ok.
- Vamos a configurar el SMTP para los emails salientes en Configuration/MercuryS SMTP Server. En la pestaña General, en el campo “Announce myself as” ponemos el nombre que nos salga: “XX SMTP”, lo que quieras. Comprueba que el TCP/IP port está a 25, que es el del SMTP. En “IP interface to use” pones 127.0.0.1. Ahora limitaremos el acceso a tu servidor a sólo tu máquina local de la siguiente forma: En la pestaña Connection control damos al botón Add restriction y ponemos 127.0.0.1 to 127.0.0.1. Comprobamos que está activos Allow Connection y dejamos todos los check desactivados. En la pestaña Connection Control desactivamos Do not Permit SMTP relaying to non-local mail. Damos al OK.
- Configuraremos el POP3 del Mercury en Configuration/MercuryP POP3 Server. En la pestaña General comprobamos el que TCP port es 110 y la “IP interface to use” es 127.0.0.1. Vamos a Connection Control y añadimos la misma restricción que en alterior punto, sólo para nuestra máquina local de la misma forma. Damos al Ok.
- Nos toca configurar el cliente del SMTP del Mercury en Configuration/MercuryC SMTP Client. Para mandar emails al exterior necesitamos los datos de un correo exterior. Yo pondré los datos de el gmail del SMTP para correos salientes. En “Smart host name” ponemos smtp.gmail.com. El puerto elegiremos el 587. Con el otro que viene no me va. Luego elegimos STARTTLS que es lo que soporta el gmail. En “Login username” ponemos nuestra cuenta de correo de gmail, y en “Password” nuestra contraseña del correo gmail. Esta parte la tenemos resuelta. Damos al Ok.
- Configuration/Manage local users comprobamos que tenemos los usuarios Admin y postmaster con permisos de administrador.
- Con el Mercury ya hemos acabado, ahora toca modificar el archivo php.ini que se encuentra en xampp/apache/bin. Nos dirigimos a [mail function] y comprobamos que los siguientes datos están así: SMTP = localhost, smtp_port = 25 y añadimos la siguiente linea : sendmail_from = postmaster@localhost (o descomentamos la que hay y la cambiamos por estos datos). Guardamos y reiniciamos el apache.
- Debería funcionar. ¿Cómo lo comprobamos? en el Mercury en File/Send mail message enviamos un email a un correo externo. Para comprobar el php creamos un archivo php con la función mail(); de esta forma: (‘xxx@gmail.com’, ‘Comprobación del MErcury’, ‘Si tu lees ésto es que todo va bien’);
De esta forma podremos mandar emails por php, tan necesario para crear usuarios en el WordPress MU con BuddyPress.
Fuente zoe
También te puede interesar: Como instalar el WordPress MU y BuddyPress y la traducción del wordpress MU y BuddyPress .

Felicitaciones por este tutorial, fue de gran ayuda para un principiante en php como yo.
hola men muchas gracias tremendo tutorial logre hacer lo que nunca pude hasta tuve que comprar un dominio pago y un hosting jeje pero eso no lo necesito mas por que ya pude mandar Correos desde mi Pagina Web con un subdominio gratis de dyndns la verdad es que me sirvio Te Felicito Y Gracias
hola amigo, gracias por la orientacion, lo he probado y funciona, por favor indicame como puedo hacer para enviar mails de manera masiva, quizas unos 4000 de un solo envio, gracias.
Grande compadre, un maestro. Felicitaciones y gracias por el mini tutorial.
Saludos y gracias.
A mi no me funciono
, sera por que uso windows vista?
Gracias De Nuevo Amigo
Tengo una pregunta
yo compre este dominio en cdmon “xvenezolanitox.com”
ese servidor lo he hecho funcionar
con mi cuenta gmail y smtp.gmail.com como lo indica el tutorial
pero no quiero eso quiero que funcione con smtp.xvenezolanitox.com
he tratado pero no he podido necesito de su ayuda gracias saludos desde venezuela
MUUUUUUUUUUUUCHAS GRACIAS AMIGO!!!!!!!!!!!!!!!!!!!!!!!
Me salvaste la vida, llevo tiempo tratando de solucionar este problema para mi seminario, muchas gracias
sos una masa goliat, muy bueno el tutorial
hola, ayer funcionó todo bien, cuandó volví a encender la pc y quise probar si todo seguía funcionando bien, ví que desde mozilla firefox no pude seguir enviando info por un formulario en php desde la misma página de prueba de ayer, sólo por explorer pude hacerlo, habrá algún problema con la configuración del mercury.
Mil Gracias, éxitos en tus labores, estaba dando palo de ciego antes de leer este turorial
hola, el asunto ya está solucionado, era una cuestión de ruta, gracias
Como habilito el STARTTLS por que me da un error cuando ejecuto que dice “must issue a STARTTLS command first” y no manda el mail
Me has dado la vida con este tutorial!
Buenísimo!
Después de semanas buscando cosas me lo has solucionado!
grandioso….!!! XD muchas gracias…
Muchas gracias. Sencillamente no habría podido configurar nada sin este tutorial
Muchas gracias por tu ayuda, pero la verdad, a mi no me funciona desde php, desde el mercury si llega el de prueba, pero lo mas cruel, es que el script php no me muesta error alguno, sabes que puede ser?
Mil gracias por tu ayuda,
saludos desde colombiia.
Pingback: Goliat Pensaba » Configurar el Mercury/32 del Xampp para enviar correos externos
gracias por el tutorial pero no logro encontrar el archivo php.ini , ponte un ejemplo del script de php para mandar los correos
gracias
Excelente tutorial, pero es posible reducir los 8 pasos, es necesario tener cuenta en gmail necesariamente…, donde conseguiste el SMTP de gmail, ¿o como?; utilize Joomla para mi página, y envia el correo.
En primer lugar, felicidades por este tutorial. Como algún otro dijo, sin él no lo habría logrado.
Sin embargo, me sucede lo mismo que a jeanpi, que en mi Xampp/apache/bin no aparece el php.ini
Alguna indicación más, por favor…
Un saludo y felicidades, de nuevo.
Muchísimas gracias!! ^^
hice todo lo mensionado en el tutorial pero aun asi no me funciona.. si envio un correo desde mercury el correo no llega y si lo envio desde php no me sale nada.. solo q se envio segun la configuracion que hice en esta pagina http://blog.deliriumlabs.net/enviar-correo-con-php/
MUCHAS GRACAIAS POR ESTE ESPECTACULAR TUTORIAL!…. ES EN REALIDAD LO QUE BUSCABA… ME FUNCIONA PERFECTAMENTE…
AGRADEZCO TU PACIENCIA PARA DOCUMENTAR ESTA INFO Y TE DESEO MUCHOS EXITOS…
gracias, excelente informacion, me funciono muy bien
Consulta, que pasa si no quiero usar un correo @gmail.com en el punto 6, osea tengo una casilla de correo de mi IPS, la misma con la que posteo este mensaje.- desde ya muchas gracias y no quiero olvidarme, este tutorial es ffffffffffff ormidable…!!! felicitaciones!!!
no see pero hice como sale en el tutorial y no me funciono, no se si la parte php esta mal, pero aun asi prove enviando un correo directamente del mercury y no me sale nada.. de envio exitoso ni nada solo desaparece la ventana.. y ps tampoco llega el correo… por favor alguien podria ayudarme con esto?
MIL GRACIAS.
SALUDOS DE COLOMBIA.
PARA EL PUNTO 8 QUIERO ACLARAR ALGO:
8.Con el Mercury ya hemos acabado, ahora toca modificar el archivo php.ini que se encuentra en xampp/apache/bin. Nos dirigimos a [mail function] y comprobamos que los siguientes datos están así: SMTP = localhost, smtp_port = 25 y añadimos la siguiente linea : sendmail_from = postmaster@localhost (o descomentamos la que hay y la cambiamos por estos datos). Guardamos y reiniciamos el apache.
LA RUTA POR DEFECTO DEL php.ini se encuentra en xampp\php , YO LO MODIFIQUE AHI Y ME FUNCIONO EL ENVIO DE EMAILS, HAY UNA FORMA DE COMPROBAR EN DONDE ESTA UBICADO EL php.ini Y ES CON EL SIGUIENTE CODIGO(CREAR ARCHIVO PHP)
LO EJECUTAS Y SE GENERA LA PANTALLA DE INFO DE PHP Y MUESTRA LO SIGUIENTE:
Loaded Configuration File C:\xampp\php\php.ini PARA MI CASO ESTABA EN ESA RUTA,
GRACIAS GOLIAT POR EL CONOCIMIENTO
DIOS TE BENDIGA !
Excelente tutorial
Felicitaciones por este super manual en verdad aprecio tu amable esfuerzo en compartir esta informacion con todos nosotros.
Anduve buscando por varios lados, probando diferentes manuales, ninguno me funcionaba
cuando derepente me tope con el tuyo y wuala. a la primera me funciono.
Nuevamente muchas gracias.
Hola a todos, buen tutorial, pero no me ha funcionado…
Quería preguntar, al igual que alguien anteriormente preguntó pero no ha tenido respuesta: me gustaría configurar mercury para la universidad donde estoy, y dispongo del smtp (que supongo que serán los datos de mi cuenta de correo, para posteriormente, solicitar una cuenta exclusiva de correo para el servidor). Hago algo mal o es que hay que realizar una configuración adicional?
un saludo y espero puedan contestarme. Gracias.
Los mensajes de pruebas desde Mercury los manda bien, pero cuando implemento cualquier código php, por muy simple que sea (como el de tu ejemplo), NO MANDA NADA—– Por favor espero sus respuestas soy nuevo en esto de los foros
Pingback: Goliat Pensaba » Configurar el Mercury/32 del Xampp para enviar correos externos « El camello, el Leon y el niño. O la evolución del perro al lobo
Goliat:
Tengo un problema con la configuracion, cuando voy a Configuration – Protocol Modules, deshabilito MercuryE para habilitar MercuryC, pero en Configuration sigue apareciendo Mercury end-to-end delivery Client, no se que pasa.
Perfecto desde mercury/32, perocuando busco algun codigo o formulario de contacto en la red este no me manda nada pero por mercury siiiiii, que se debe hacer para el formulario de envio de contacto ?? algun ejemplo que funcione para mercury/32
hey Man grandioso!!! un saludo chingon desde Mexico. Te la rifas, un exelente tutorial 100% funcional
me saco de un apuro, mil gracias
Gracias por el tutorial, funcionó todo a la primera.
muy buen aporte man, muchas gracias me sirvio de mucho
Hola Muy buen tutorial
Sabes hice todo y me funciono muy bien lo del envio “Send mail message enviamos un email a un correo externo” desde el mercury, pero despues aplicandolo en una web hice un archivo html que tiene “nombre”, “empresa”, “mail, y “mensaje” al enviar estos datos lo recive un archivo en php con post y me arroja un error que es el siguiente:
“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 J:\xampp\htdocs\web\enviar.php on line 20
Mensaje enviado con exito”
por lo que no me llego nada a mi correo
este es mi codigo en php:
Me gustaria saber como puedo correguir este error se los agradeceria mucho
gracias.
Hola Muy buen tutorial
Sabes hice todo y me funciono muy bien lo del envio “Send mail message enviamos un email a un correo externo” desde el mercury, pero despues aplicandolo en una web hice un archivo html que tiene “nombre”, “empresa”, “mail, y “mensaje” al enviar estos datos lo recive un archivo en php con post y me arroja un error que es el siguiente:
“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 J:\xampp\htdocs\web\enviar.php on line 20
Mensaje enviado con exito”
por lo que no me llego nada a mi correo
este es mi codigo en php:
$nombre = $_POST['nombre'];
$mail = $_POST['mail'];
$empresa = $_POST['empresa'];
$header = ‘From: ‘ . $mail . ” \r\n”;
$header .= “X-Mailer: PHP/” . phpversion() . ” \r\n”;
$header .= “Mime-Version: 1.0 \r\n”;
$header .= “Content-Type: text/plain”;
$mensaje = “Este mensaje fue enviado por ” . $nombre . “, de la empresa ” . $empresa . ” \r\n”;
$mensaje .= “Su e-mail es: ” . $mail . ” \r\n”;
$mensaje .= “Mensaje: ” . $_POST['mensaje'] . ” \r\n”;
$mensaje .= “Enviado el ” . date(‘d/m/Y’, time());
$para = ‘davidpalma7@gmail.com’;
$asunto = ‘Contacto desde Pagina Web Estadistica’;
mail($para, $asunto, utf8_decode($mensaje), $header);
echo “Mensaje enviado con exito”;
Me gustaria saber como puedo correguir este error se los agradeceria mucho
gracias.
HOLA, BUEN TUTO, PERO SOLO ME FUNCIONA ENVIANDO EL CORRE DESDE MERCURY PERO LO NECESITO EN JOOMLA 1.5.9 Y NO ME FUNCIONA, QUE DEBO HACER PARA QUE FUNCIONE, ESCRIBEME A MI CORREO onedike@hotmail.com GRACIAS POR TU AYUDA
Muchas gracias, he estado buscando como hacerlo y aquí lo he encontrado de una manera facilísima. Gracias de verdad.
“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 J:\xampp\htdocs\web\enviar.php on line 20
tengo el mismo problema porfavor mostrar solucion, Gracias.
hola hice todo loq ue me dijiste… no encuentro el archivo php.ini que la carpeta que dices… cuando me meto en el panel de xampp, en estado, me sale smtp server desactivado, como hago para activarlo?
eso puede que sea… lo siguiente que hago es meter un formulario echo en flash con php para el envio de mails, cargo la pagina poniendo en mi explorador 127.0.0.1. me sale el formulario, a la hora de enviar el amil no me sale ningun error, no me sale basicamente nada, soloq ue el mail se envio, pero nunca me llega nada. soy principiante en esto. necesito poder enviar corres desde mi web urgentemente y aun no consigo.
otra cosa me gustaria contactar con alguien que me explique paso a paso como hacerlo, este es mi email es solo darme unas claces de como hacerlo y no lo molesto mas!! por favor desde ya muchas gracias
Gracias hombre me ayudo mas de lo que imagina estaba bloqueado por lo de mail para hacer la confirmacion de registro ya estaba cansado de estar subiendo por partes a un servidor y hacer cambios y otra prueba etc…. gracias
Para los que tienen el problema de:
“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 J:\xampp\htdocs\web\enviar.php on line xx
deben iniciar el servidor mercury desde el panel de control de xampp y luego realizen el envio de los mails
Muy buen tuto, pero me da el mismo error que a algunos lectores.
*Nota: ya tenía el servidor mercury activo, he probado reiniciándolo y activándolo de nuevo y nada.
Gracias por toda tu ayuda!!
De diez, sin palabras Muchas Gracias todo de marabillas
Un abrazo
Que tipo tan teso. EXCELENTE tutorial, gracias.
Hola…. sería mucho pedir si pudieras poner ejemplos o imanges para poder ver si efectivamente estamos haciendo las cosas bien… esta bien explicado pero para uno que inicia pues se le hace a uno un poco dificil… otra pregutna…. esto funciona tambien con Joomla… perdona… posiblemente es la compentecias de WordPress pero se me hace mas facil y hay mucho mas extensions para Joomla…. gracias por tan buen tutorial… aunque le falta un poquito… espero algun dia poder cooperar y ayudar como lo haces tu…. Saludos
Seguí todos los pasos que indicas y no me funcionaba, buscando encontré que hay un módulo que tiene un bug y se debe deshabilitar, lo hice y efectivamente funcionó. Dejo el paso para aquellos que aún no les funcione:
en la ventana del Mercury ir a Configuration, luego a Protocol Modules, y deshabilitar el que dice: MercuryX connection and process scheduler, aceptar, reiniciar el Mercury y listo.
Saludos, espero les sirva.