当我尝试使用ASP.NET发送邮件时,我收到" 邮箱不可用.服务器响应是:5.7.1无法中继abc@xyz.com ".该站点部署在IIS7,Windows 2008服务器上.
该网站在IIS6和Windows 2003 Server上运行良好.我在IIS7上部署了它,2008年它开始给我这个错误.
以前有人经历过这个吗?
我已经完成了以下问题的答案,发现它非常有用.但是,我对smtp服务器的行为有不同的疑问. 邮箱不可用 和中继配置
场景: 我有两个smtp服务器,我无法访问,即只有凭据.从1台服务器发送电子邮件时收到以下错误:
信箱不可用.服务器响应为:5.7.1无法中继
键入:System.Net.Mail.SmtpFailedRecipientException:
来源:系统
堆栈跟踪:位于System.Net.Mail.SmtpClient.Send(MailMessage消息)的System.Net.Mail.SmtpTransport.SendMail(MailAddress sender,MailAddressCollection recipients,String deliveryNotify,Boolean allowUnicode,SmtpFailedRecipientException&exception)
非常清楚,即smtp服务器无法中继消息.但是,在其他服务器上,SendEmail方法没有抛出任何异常,但我收到了一封Mailer守护程序电子邮件消息,声明:
这是主机测试的邮件系统.中继 .host.name.changed.
我很遗憾地通知您,您的邮件无法发送给一个或多个收件人.它附在下面.
如需更多帮助,请发送邮件到邮政.
如果您这样做,请包含此问题报告.您可以从附加的返回消息中删除自己的文本.
邮件系统
test1.test2@hotmail.com:host mx3.hotmail.com [xx.xx.xx.xxx]说:550未采取请求的操作:邮箱不可用(回复RCPT TO命令)
题:
也,
我无法使用以下代码向"user.one@asdf.com"等外部域地址发送电子邮件.
SmtpClient smtpClient = new SmtpClient(smtpMailServer);
smtpClient.UseDefaultCredentials = true;
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
smtpClient.EnableSsl = true;
//Sending mail.
smtpClient.Send(mailMessage);
Run Code Online (Sandbox Code Playgroud)
我得到一个例外 -
Mailbox unavailable. The server response was: 5.7.1 Unable to relay for xxx@example.com
如果我将DeliveryMethod更改为 -
smtpClient.DeliveryMethod = SmtpDeliveryMethod.PickupDirectoryFromIis;
Run Code Online (Sandbox Code Playgroud)
我可以在本地机器上发送电子邮件.但它在生产现场失败,但有例外 -
Cannot get IIS pickup directory
你能建议我做什么吗?