我正在使用ASP.Net 4.0和MVC 3以及C#尝试从我的网站发送电子邮件。此代码适用于其他主机但由于某种原因GoDaddy错误输出。这是我正在使用的代码。
var fAddress = new MailAddress("customers@email.com");
var tAddress = new MailAddress("mygodaddyaddress@email.com");
var message = new MailMessage(fAddress, tAddress)
{
Subject = subject,
Body = body
};
var client = new SmtpClient("relay-hosting.secureserver.net");
client.Send(message);
这是我收到的错误
不允许使用邮箱名称。服务器响应是:抱歉,您的邮件已被管理拒绝。 (#5.7.1)
这里的任何其他GoDaddy用户可以解决一些问题吗?
答案 0 :(得分:3)
这可能与来自地址有关:
问题似乎是FROM电子邮件地址。 FROM电子邮件地址必须是托管域的电子邮件地址,以避免此错误。例如,如果您拥有托管域yourdomain.com,则您的FROM电子邮件地址应为username@yourdomain.com。
来源:
http://www.cosmocentral.com/2009/01/553-sorry-your-mail-was-administratively-denied/
答案 1 :(得分:1)
可能是因为GoDaddy使用的邮件服务器都没有本地电子邮件地址,因此您需要允许中继。这只是一种可能性,我认为最好的方法是直接联系他们。
答案 2 :(得分:0)
您的发件人地址不必是GoDaddy电子邮件。域的用户名/密码必须有效。这是Web.config应该具有的内容:
<system.net>
<mailSettings>
<smtp from="me@test.com">
<network host="smtpout.secureserver.net" port="80" userName="foo@bar.com" password="yourpassword" defaultCredentials="false" />
</smtp>
</mailSettings>
</system.net>
然后您可以使用以下代码在代码背后对其进行初始化:
var mailclient = new SmtpClient();