Enviar correos en GoDaddy con Windows y PHP

En múltiples ocasiones había tenido la oportunidad de implementar sitios web con formularios de contacto en GoDaddy sin inconvenientes, pero en uno de los últimos sitios que he desarrollado se presentó un problema que me iba dando bastante trabajo para averiguar el porqué no enviaba un email desde el formulario de contacto, algo que en condiciones normales haría.

Todo empezó, como comento arriba, con un formulario de contacto que no enviaba los respectivos mensajes y con el sistema gestor de contenidos Joomla (bastante conocido por todos); cabe aclarar que no acostumbro usar el sistema de formularios de contacto que Joomla trae por defecto, pero nunca había tenido problemas con él, así que ahí empezó la odisea.

Al principio, pensé que el servicio de email de GoDaddy estaba caído o algo así, así que esperé un poco y nada sucedió, por lo tanto, decidí escribir al servicio de soporte de GoDaddy y la respuesta que dieron fue algo plana y sin mayor explicación: todo está funcionando bien. Así que pensé que tal vez había tenido errores a la hora de subir el gestor de contenidos (porque como indiqué, nunca había tenido problemas con los formularios en GoDaddy). Y volví a hacer las pruebas y: Nada. Revisé la información de la función phpinfo() de PHP y vi que todo estaba bien excepto por una cosa: Se me había pasado por alto ver el sistema operativo del plan que mi cliente había adquirido: Microsoft Windows Server.

No es que considere a Windows un mal sistema operativo, sino que es bastante problemático a la hora de hacer las veces de servidor (y creo que en el escritorio pasa algo parecido), así que asumí que la función mail de PHP no estaba habilitada en el paquete, así que decidí probar con otra opción: Sendmail, y para ello para de una vez por todas terminar con el problema escribí a GoDaddy para que me indicaran la ruta de Sendmail para ejecutarlo desde el script y poder enviar los correos (la ruta por defecto en Linux es /usr/sbin/sendmail y por obvias razones esa ruta no funciona en Windows); la respuesta por parte del servicio al cliente fue bastante odiosa: Utilice los formularios prediseñados de GoDaddy!!! Cómo? cómo es posible que un proveedor como GoDaddy esté dando respuestas de ese estilo? en fin, respiré profundo y ponerme manos a la obra, ya que nunca un formlario de contacto me había tomado tanto tiempo.

Seguí investigando, y encontré en la configuración de phpinfo que GoDaddy usaba en Windows el sistema SMTP con una URL bastante particular y decidí probar suerte con la configuración por SMTP:

Mailer: SMTP Server
Mail from: miemail@miservidor.com (Acá va un email DEBE existir en GoDaddy)
From Name: VCS (Nombre de la compañía, a decir verdad, cualquier cosa está bien)
Sendmail Path: /usr/sbin/sendmail (Este dato es totalmente irrelevante)
SMTP Authentication: No
SMTP Security: None
SMTP Port: 25
SMTP Username: email@miservidor.com (lo mismo que arriba)
SMTP Password: (Vacío, no se debe escribir nada)
SMTP Host: relay-hosting.secureserver.net

Y voilà, ha funcionado. No es por nada pero definitivamente esta odisea hubiese sido evitable si el equipo de GoDaddy me hubiese indicado desde un principio que en los planes con Windows solo funciona SMTP y me hubieran dado la URL (que por cierto, tuve que averiguarla manualmente).

En conclusión, GoDaddy puede ser un proveedor de hosting muy popular pero tiene múltiples restricciones de un tipo u otro que sea por seguridad o sea por negligencia hacen difícil la labor de desarrollo web. Por ahora he recomendado a mis cliente un servicio que he probado y ha sido excelente, y que he direccionado a: http://virtual-consulting.duoservers.com/ pruébenlo y me cuentan.

Espero haberles ahorrado trabajo, y por último agrego que lo anterior también aplica para las implementaciones en el lenguaje ASP y ASP.Net.


19 Responses to “Enviar correos en GoDaddy con Windows y PHP”

  • Roberto Says:

    Hola, que tal muy buen artículo, estamos con el mismo problema pero no encuentro en donde configurar lo que se pone ahi.
    Les agradecería mucho si me pueden indicar donde.
    Gracias.

  • robregonm Says:

    @Roberto
    En la Configuración global (Global configuration) del administrador de Joomla ( http://url_de_su_servidor/administrator/index.php?option=com_config ) en la pestaña Servidor (Server)
    Saludos.

  • Roberto Says:

    Gracias por la respuesta, pero estoy trabajando en Dreamweaver, podrían ayudarme en ese caso?
    saludos.

  • robregonm Says:

    El artículo resuelve un problema que se presenta en los hostings con GoDaddy que usan sistema operativo Windows, y que en mi caso sucedió con el Sistema gestor de contenidos Joomla. Si está usando Dreamweaver me hace pensar que no está usando un CMS (Gestor de Contenidos), en ese caso la solución está en usar un script que envíe por SMTP (recomiendo PHPMailer).
    Saludos y éxitos.

  • Julio Hernández Says:

    Excelente, esa era la información que necesitaba, el Server SMTP
    de GoDaddy llamado relay-hosting.secureserver.net

  • Jonathan Says:

    heyyyyyyyyyyy man que buen aporte muchas gracias, la verdad llevaba semanas tratando de configurar esto, la verdad no me gusta para nada el servicio de hosting de godaddy y menos en windows te trae muchos inconvenientes, en fin gracias a usted he resuelto mi problema muchas gracias

  • Alfredo Says:

    Hola gracias por la explicacion he tenido el mismo problema y esto es lo mas cercano que he encontrado para solucionarlo, sin embargo no me queda muy claro cuando dices: “…asumí que la función mail de PHP no estaba habilitada en el paquete, así que decidí probar con otra opción: Sendmail”, puesto que en un principio probe con la funcion mail pero no funciono, tambien el hosting lo tengo en windows, pero mi pregunta es: sendmail es una clase como phpmailer o algo asi porque tambien intente con esta ultima y no funciono. si es asi donde puedo conseguit el script? agradeceria mucho su colaboración.

  • robregonm Says:

    Sendmail es un servicio para envío de correo en plataformas Unix/Linux (y si no estoy mal también Mac. Más info en: http://www.sendmail.org/ y http://es.wikipedia.org/wiki/Sendmail

  • Alfredo Says:

    ok gracias lo chekeare

  • Gabriel Delgado Says:

    Estimado amigo:

    tengo el mismo problema que tu ya que quiero anexar un formulario pero la verdad es que soy neofito en el asunto tu mencionas en el articulo que hay diseños de formularios prediseñados con godaddy me podrias decir como encontrarlos y que configuraste phpinfo que GoDaddy usaba en Windows el sistema SMTP con una URL bastante particular y decidí probar suerte con la configuración por SMTP. me podrias decir donde encontrar esto soy neofito en el asunto

    gracias y saludos y excelente aporte

  • Epale Says:

    Despues de dos dias de busqueda y varias pruebas al fin, la solución la encontré en ingles.

    A mi me funciono esto en joomla 1.5.22 español, servidor godaddy, hosting windows y correo de godaddy.

    -Programa de Correo: Servidor SMTP.
    -Dirección del Remitente: tucorreo@HostingDeGodaddy.com
    -Nombre del remitente: Nombre Sitio Web.
    -Ruta para Sendmail: /usr/sbin/sendmail
    -Autenticacion SMTP: No.
    -SMTP Security: Nada.
    -SMTP Port: 25.
    -Usuario SMTP: (vacio).
    -Contraseña SMTP: (vacio).
    -Servidor SMTP: relay-hosting.secureserver.net

    Link fuente original:
    http://forum.joomla.org/viewtopic.php?p=692344

    Espero les sirva de algo, me dejan saber. Dios les bendiga!!!

  • cesar Says:

    hola a todos, veo un buen articulo y tengo el mismo problema y espero me puedan ayudar… yo tengo mi servidor en godaddy, en LINUX, lor lo que veo esto del servidor SMTP solo funciona con windows es asi??… por favor ahyudenme, no puedo enviar correos de mi joomla 1.5.22 a correos yahoo… dentro tengo montado mi jomsocial.. el registro que se hace en el registro de jomsocial no acepta cuentas yahoo… no les llega el correo de activacion… ayudenme por favor…. como configuro mi joomla y como lo configuro en godaddy tb porfa soy novato… mil gracias

  • robregonm Says:

    Hola César,
    En la versión Linux de GoDaddy no he tenido ese tipo de problemas (generalmente uso la sentencia mail() que por lo general está integrada en PHP), de todas formas no está de más usar los servidores indicados arriba en el artículo.

  • cesar Says:

    ayer estuve conversando con godaddy, y me dijeron que esa configuracion que mencionas arriba de SMTP solo es valida para los que usan el formulario de godaddy, yo uso el formulario de registro de joomla, para ser mas especifico el de JOMSOCIAL, que es un componente de joomla para hacer red social. segun ellos el formulario de joomla ni sikiera deberia mandar correos, pero si lo hace. mi jomsocial manda correos a los q se registran con cuentas en google y en hotmail, pero no en yahoo… no tengo configurado el SMTP por lo mismo que me dijeron y lo tengo en correo PHP, intente ponerlo en Sendmail en la configuracion del backend, m,e registre con una cuenta en yahoo y nada… no se si podrias ayudarme…

  • cesar Says:

    hola robregon… acabo de averiguar cual ha sido el problema… y resulta que yahoo tiene una configuracion rara, me explico. si yo me creo uan cuenta como xxx@yahoo.es, esto quiere decir que mi cuenta original es xxx@yahoo.es, pero tambien puedo ingresar a mi cuenta digitando xxx@yahoo.COM o xxx@yahoo.COM.PE sin ningun problema. entonces la gente que se registraba en mi pagina estan acostumbrados a ingresar con .COM cuando en realidad son .ES o quiza .COM.PE, si me funciona todo correctamente.. agradesco tu ayuda

  • robregonm Says:

    Qué bueno, estoy seguro que a muchos más lectores les será de utilidad saberlo.

  • Micaxification Says:

    Sos un GENIOoooooooooooooo
    GRACIAS!!!!!!!!!!

  • Guillermo Says:

    Inicialmente este articulo me permitió resolver mi problema para enviar correos mientras probaba la app en localhost… sin embargo, cuando la pasé a producción alojada en GoDaddy, tengo un error que me indica que el servidor SMTP no puede ser conectado.

    Que podría estar sucediendo? Estoy usando el servicio con una cuenta de correo de este proveedor y con la siguiente configuración en PHPMailer .

    $mail->Host=”ssl://smtpout.secureserver.net”;
    $mail->Port=465;

    Espero puedan ayudarme, no logro encontrar solución a la fecha.

    Saludos

Leave a Reply