Inicio > General > Enviar correos en GoDaddy con Windows y PHP

Enviar correos en GoDaddy con Windows y PHP

Jueves, 4 de Febrero de 2010

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.

Categories: General Tags: , , ,
  1. Roberto
    Miércoles, 24 de Febrero de 2010 a las 14:52 | #1

    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.

  2. Miércoles, 24 de Febrero de 2010 a las 17:11 | #2

    @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.

  3. Roberto
    Jueves, 25 de Febrero de 2010 a las 10:17 | #3

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

  4. Jueves, 25 de Febrero de 2010 a las 10:40 | #4

    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.

  5. Lunes, 5 de Abril de 2010 a las 01:52 | #5

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

  6. Miércoles, 23 de Junio de 2010 a las 20:11 | #6
  7. Viernes, 25 de Junio de 2010 a las 11:22 | #7

    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

  8. Alfredo
    Sábado, 24 de Julio de 2010 a las 11:50 | #8

    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.

  9. Lunes, 26 de Julio de 2010 a las 11:10 | #9

    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

  10. Alfredo
    Martes, 27 de Julio de 2010 a las 09:08 | #10

    ok gracias lo chekeare

  1. Sin trackbacks aún.