2009-09-22 54 views
0

我使用asp.net的smtpClient发送邮件,但最近我发现它只能发送电子邮件到与smtp服务器相同的域,如果我尝试发送邮件出于这个原因,会出现这样的错误:邮箱无法访问,邮件地址无法中继

邮箱无法到达,*****无法中继**** 对不起,我不记得确切的消息。

但是这从来没有发生过,为什么?

在此先感谢

+0

您的主机更改了smtp服务器名称和/或凭证。你跟他查过了吗? – 2009-09-22 14:41:26

+0

Yup几乎无法登录到服务器,它将邮件转发到与您已登录和认证的域相同的域中。要发送域外的邮件,您需要传递有效的凭据。与管理员检查细节应该是什么。 – Robert 2009-09-22 14:42:54

+0

所以你的意思是它不是我的编程问题? 是否有任何方法来解决这个问题在smtpClient? – MemoryLeak 2009-09-22 14:44:45

回答

0

您是否通过ASP.NET以外的相同服务器(例如Outlook)发送电子邮件?

您可能遇到以下两个问题之一:

SMTP服务器未配置为转发。这不是ASP.NET /编程问题。服务器必须设置为SMTP网关。

您没有将用户名/密码凭证传递给服务器。在某些服务器上,只要有内部IP地址,您仍然可以发送“内部”邮件,但服务器将拒绝将电子邮件转发到外部地址。

0

这是一个配置问题。 SMTP服务器必须配置为充当网关,这意味着它会将电子邮件转发到注册目标域的SMTP服务器。

通常,组织的SMTP服务器将仅充当从网络内部连接的用户或作为组织成员进行身份验证的用户的网关。您还可以在IIS下设置SMTP服务器,并将其配置为充当网关。然后你会发送所有的邮件到localhost,剩下的工作就完成了。

与您的系统管理员交谈。