gpt4 book ai didi

c# - 信箱不可用。服务器响应为 : 5. 7.1 无法中继错误

转载 作者:可可西里 更新时间:2023-11-01 03:12:04 24 4
gpt4 key购买 nike

我在 netsol 服务器上托管了我的一个网站。从那里 contact.aspx 必须使用交换服务器发送电子邮件。当我尝试发送电子邮件时:

Error: Mailbox unavailable. The server response was: 5.7.1 Unable to relay

代码:

MailMessage message = new MailMessage(@"xxx@example.com", 
@"test_user@yahoo.com",
"New Message",
"Exchange");
SmtpClient mail = new SmtpClient("exchange.abc.com", 29);
mail.EnableSsl = true;
mail.Credentials = new NetworkCredential(@"xxx@example.com", @"password");
mail.UseDefaultCredentials = false;
mail.DeliveryMethod = SmtpDeliveryMethod.Network;
mail.Send(message);

我尝试过的选项:

  • 在端口 465 或 587 或 25 上测试
  • 更改了 SmtpDeliveryMethod.PickupDirectoryFromIis
  • 无法配置 IIS(SMTP 服务器),因为它托管在其他人的服务器上

最佳答案

大多数 SMTP 服务器的默认配置是不从不受信任的来源中继到外部域。例如,假设您联系 foo.com 的 SMTP 服务器并要求它向 bar@xyzzy.com 发送消息。因为 SMTP 服务器并不真正知道您是谁,所以它会拒绝转发邮件。如果服务器确实为您执行了该操作,它将被视为 open relay ,垃圾邮件发送者通常就是这样做的。

如果您联系 foo.com 邮件服务器并要求它向 somebody@foo.com 发送邮件,它可能会让您这样做。这取决于他们是否相信你是你所说的那个人。通常,服务器会尝试进行反向 DNS 查找,如果您发送的 IP 与 DNS 中 MX 记录的 IP 地址不匹配,则拒绝发送邮件。因此,如果您说您是 bar.com 邮件服务器,但您的 IP 地址与 bar.com 的 MX 记录不匹配,那么它将拒绝传递邮件。

您需要与该 SMTP 服务器的管理员联系以获取身份验证信息,以便它允许您进行中继。当您联系 SMTP 服务器时,您需要出示这些凭据。通常它要么是用户名/密码,要么可以使用 Windows 权限。取决于服务器及其配置方式。

参见 Unable to send emails to external domain using SMTP有关如何发送凭据的示例。

关于c# - 信箱不可用。服务器响应为 : 5. 7.1 无法中继错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15717743/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com