Foros del Web » Programando para Internet » PHP »

PHPMailer y SMTP remoto.

Estas en el tema de PHPMailer y SMTP remoto. en el foro de PHP en Foros del Web. Hola! Tengo un servidor corriendo Linux al cual puedo acceder mediante ssh. Ahi mismo estoy montando un sitio en el cual necesito enviar una serie ...
  #1 (permalink)  
Antiguo 06/02/2006, 14:19
 
Fecha de Ingreso: septiembre-2002
Ubicación: Mexico
Mensajes: 142
Antigüedad: 21 años, 7 meses
Puntos: 0
PHPMailer y SMTP remoto.

Hola!
Tengo un servidor corriendo Linux al cual puedo acceder mediante ssh. Ahi mismo estoy montando un sitio en el cual necesito enviar una serie de mails mediante PHPMailer usando un servidor SMTP que se encuentra en otro sitio.

Código:
<?php

require("phpmailer/class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP();                                      // set mailer to use SMTP
$mail->Host = "mail.dominio.com";  // specify main and backup server
$mail->SMTPAuth = true;     // turn on SMTP authentication
$mail->Port = 25;
$mail->Username = "daniel+dominio.com";  // SMTP username
$mail->Password = "daniel"; // SMTP password
$mail->From = "[email protected]";
$mail->FromName = "Mailer";
$mail->AddAddress("[email protected]");
$mail->WordWrap = 50;                                 // set word wrap to 50 characters
//$mail->AddAttachment("/var/tmp/file.tar.gz");         // add attachments
//$mail->AddAttachment("/tmp/image.jpg", "new.jpg");    // optional name
$mail->IsHTML(true);                                  // set email format to HTML
$mail->Subject = "Here is the subject";
$mail->Body    = "This is the HTML message body <b>in bold!</b>";
$mail->AltBody = "This is the body in plain text for non-HTML mail clients";
if(!$mail->Send()){
   echo "Message could not be sent. <p>";
   echo "Mailer Error: " . $mail->ErrorInfo;
   exit;
}
echo "Message has been sent";
?>
Sucede que cada vez que hago la prueba, me muestra el siguiente error

Cita:
Message could not be sent.
Mailer Error: Language string failed to load: connect_host
Me baje el rpm de nmap y cheque los puertos que tenia sobre localhost (conectado remotamente) y no aparecia el 25....que es el que necesito. Este servidor donde tengo el SMTP es con el que usualmente envio mails desde mi programa de correo, y le puse las mismas configuraciones a mi archivo PHP. Alguna sugerencia de como poder hacer que sagan los correos?

Saludos y gracias por su tiempo!
__________________
www.subflash.com <-----visita
  #2 (permalink)  
Antiguo 06/02/2006, 14:51
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Prueba como nombre de usuario y separador la @ ... En general son los mismos datos de autentificación que usas en tu cliente de correo habitual para usar ese servidor SMTP remoto que comentas:

$mail->Username = "[email protected]";

El error dice que no pudo conectarse al SMTP, revisa los firewalls de tu servidor (donde corres PHP) si tienen permiso para salir por el puerto SMTP (25) y de ese servidor remoto SMTP si permite conexiones desde cualquier host (por ejemplo .. algunos servidores SMTP autentifican sólo a usuarios del mismo ISP (por IP) .. Tal vez no sea el caso .. pero hay que tenerlo en cuenta).

En general y aparentemente la configuración de PHP Mailer es correcta. De hecho se te informan de los problemas que tienes que son ajenos a PHP.

Un saludo,
  #3 (permalink)  
Antiguo 06/02/2006, 15:33
 
Fecha de Ingreso: septiembre-2002
Ubicación: Mexico
Mensajes: 142
Antigüedad: 21 años, 7 meses
Puntos: 0
Hola Cluster...no se si sea el caso, pero probe con un telnet mail.dominio.com 25 y me boto la conexion....

como puedo saber mi firewall (creo que hay uno...el servidor esta alojado en un data center) tiene permiso de salida por el puerto SMTP (25) y en caso de que no los tenga, como los habilito?

saludos!
__________________
www.subflash.com <-----visita
  #4 (permalink)  
Antiguo 07/02/2006, 05:10
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
como puedo saber mi firewall (creo que hay uno...el servidor esta alojado en un data center) tiene permiso de salida por el puerto SMTP (25) y en caso de que no los tenga, como los habilito?

Firewall seguro que tienes instalado .. ahora, si es tuyo própio o compartido eso lo tendrás que aclarar con tu proveedor. (Al igual que aseoría al respecto si puedes o no alterar reglas del firewall si fuese necesario).

De todas formas, el telnet que hicistes a tu SMTP externo y que dices que te "botó" .. depende del error .. el que teóricamente botó la conexión es el servidor remoto .. no tu servidor origen .. Pero esto depende del mensaje de error que obtuvieses.

Un saludo,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:55.