Arj*_*jun 15 c# asp.net smtpclient
我在netsol服务器上托管了我的一个网站.从那里contact.aspx
必须使用交换服务器发送电子邮件.当我尝试发送电子邮件时:
错误:邮箱不可用.服务器响应为:5.7.1无法中继
码:
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);
Run Code Online (Sandbox Code Playgroud)
我试过的选项:
Jim*_*hel 41
大多数SMTP服务器的默认配置不是从不受信任的源中继到外部域.例如,假设您联系SMTP服务器以获取foo.com并要求它向bar@xyzzy.com发送消息.由于SMTP服务器并不真正知道您是谁,因此它将拒绝中继邮件.如果服务器确实为您做到了这一点,它将被视为一个开放中继,这是垃圾邮件发送者经常做的事情.
如果您联系foo.com邮件服务器并要求它发送邮件到somebody@foo.com,它可能会让您这样做.这取决于他们是否相信你是谁,你是谁.通常,服务器将尝试进行反向DNS查找,如果您发送的IP与DNS中的MX记录的IP地址不匹配,则拒绝发送邮件.因此,如果您说您是bar.com邮件服务器但您的IP地址与bar.com的MX记录不匹配,那么它将拒绝传递该邮件.
您需要与该SMTP服务器的管理员联系以获取身份验证信息,以便它允许您进行中继.联系SMTP服务器时,您需要提供这些凭据.通常它是用户名/密码,或者它可以使用Windows权限.取决于服务器及其配置方式.
有关如何发送凭据的示例,请参阅无法使用SMTP向外部域发送电子邮件.
Tom*_*bes 10
我使用Windows Server 2012进行了很长一段时间的托管,并且它在多年后停止工作没有任何问题.我的解决方案是将服务器的公共IP地址添加到中继列表并启用Windows集成身份验证.
我只做了两处修改而没有哪些帮助.
转到IIS 6 Manager
选择SMTP服务器的属性
在选项卡Access上,选择中继
添加您的公共IP地址
关闭对话框并在同一选项卡上单击"身份验证"按钮.
添加集成Windows身份验证
也许不需要一些步骤,但它有效.
归档时间: |
|
查看次数: |
105247 次 |
最近记录: |