Pregunta

Implementé mi aplicación web a nuestro servidor de producción IIS 6.0 y todo está funcionando, excepto cuando mi código intenta enviar un correo electrónico a una dirección que no está en el dominio de nuestro servidor de correo electrónico. He visto varios síntomas, pero esto parece ser el más sencillo para describir:

Error de sintaxis en parámetros o argumentos. La respuesta del servidor fue: 5.7.1 Este sistema no está configurado para retransmitir el correo

Mi aplicación web Obteniendo este error MSG usa System.net.mail. Reside junto con la aplicación web anterior, se supone que debe reemplazar qué usa el sistema.web.mail. Hay un servidor SMTP en esta misma máquina que parece requerir una nueva configuración con respecto al relé.

Comprobación de las propiedades del servidor SMTP mostró nada configurado para "restricciones de relé". La aplicación web de producción anterior envía un correo electrónico sin errores con el servidor SMTP configurado como se describe.

Entonces, en resumen, ¿el uso de SYSTEM.NET.mail requiere algo diferente para transmitir correo electrónico que el sistema.web.mail?

El web.config Para la versión más reciente que tiene problemas de relé contiene:

<system.net><mailSettings><smtp><network host="mail.cbmiweb.com" port="25"/></smtp>

Utilicé los valores anteriores para todas mis pruebas (primero en mi localhost con XP IIS 5.1; Luego, en un servidor IIS 6.0 en nuestra LAN) y nunca tuvo problemas de "relé".

La web.config para la versión anterior usando System.Web.mail no contiene nada relacionado con SMTP!

Si de repente necesito un nombre de usuario y "strong> agregado a la configuración SMTP anterior, ¿por qué nunca necesitaba" credenciales "durante el desarrollo?

No sé mucho sobre SMTP y, en realidad, ni siquiera sé qué pedir al administrador del servidor de correo. Estoy muy confundido acerca de qué hacer ... Gracias.

¿Fue útil?

Solución

Me suena como la aplicación anterior es enviar el mensaje directamente al servidor de destinatarios y está evitando completamente su servidor de correo local. Esto habría sucedido porque su aplicación no habría tenido un servidor de correo para usar configurado, por lo que se devuelve el valor predeterminado para intentar enviar el correo.

Esta suele ser una mala idea, ya que puede causar retrasos en su aplicación, según la configuración del servidor de correo de los destinatarios (estamos hablando de segundos aquí). Además, si no está configurado para lidiar con cosas como las listas grises, etc., entonces puede tener un gran número de correos electrónicos que se envió , pero nunca llegó realmente.

Debe solicitar al administrador del servidor de correo configurar correctamente su servidor de correo local para permitir el transmisión de su máquina.

o (y esta es la forma más segura)

Debe configurar un usuario en su servidor de correo local y haga que su aplicación use esas credenciales de inicio de sesión cuando intenten enviar un correo electrónico.

The SystemnetMail.com El sitio podría ser útil. Específicamente la página en Configuración SMTP .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top