我在IIS上设置了SMTP服务器和POP3服务器了,加了一个邮箱,在ASP.NET中我用如下代码发送邮件:
/// <summary>
/// 发送EMail
/// </summary>
/// <param name="title">标题</param>
/// <param name="body">内容</param>
/// <param name="toAdress">发送到哪</param>
/// <param name="fromAdress">从哪发送</param>
/// <param name="userName">用户名</param>
/// <param name="userPwd">密码</param>
/// <param name="smtpHost">smtp服务器</param>
private bool sendMail(string title, string body, string toAdress, string fromAdress,
string userName, string userPwd, string smtpHost)
{
try
{
MailAddress to = new MailAddress(toAdress);
MailAddress from = new MailAddress(fromAdress);
System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(from, to);
message.Subject = title; message.Body = body;
SmtpClient smtp = new SmtpClient();
smtp.UseDefaultCredentials = true;
smtp.Port = 25;
smtp.Credentials = new NetworkCredential(userName, userPwd);
smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
smtp.Host = smtpHost;
message.To.Add(toAdress);
smtp.Send(message);
return true;
}
catch (Exception ex)
{
throw;
//FailureText.Text = ex.Message;
//return false;
}
}以上代码当我在本地的电脑上测试的时候,URL地址是:http://localhost/test.aspx
sendMail("标题", "内容", "[email protected]", "[email protected]", "admin",
"123456", "215.25.2.36");
这时候是能向我的QQ邮箱发送邮件的,发件人也是[email protected],
当是当我把同样的代码放到局域网内的服务器时,URL地址是:http://192.168.1.1/test.aspx
测试的时候却总是发送不了邮件,提示“由于目标机器积极拒绝,无法连接。 215.25.2.36:25 ”请问怎么怎么回事啊?在我的电脑上运行该页面的时候是可以发送邮件的,215.25.2.36这台机器的防火墙中的例外已经加上21和25端口了。
/// <summary>
/// 发送EMail
/// </summary>
/// <param name="title">标题</param>
/// <param name="body">内容</param>
/// <param name="toAdress">发送到哪</param>
/// <param name="fromAdress">从哪发送</param>
/// <param name="userName">用户名</param>
/// <param name="userPwd">密码</param>
/// <param name="smtpHost">smtp服务器</param>
private bool sendMail(string title, string body, string toAdress, string fromAdress,
string userName, string userPwd, string smtpHost)
{
try
{
MailAddress to = new MailAddress(toAdress);
MailAddress from = new MailAddress(fromAdress);
System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(from, to);
message.Subject = title; message.Body = body;
SmtpClient smtp = new SmtpClient();
smtp.UseDefaultCredentials = true;
smtp.Port = 25;
smtp.Credentials = new NetworkCredential(userName, userPwd);
smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
smtp.Host = smtpHost;
message.To.Add(toAdress);
smtp.Send(message);
return true;
}
catch (Exception ex)
{
throw;
//FailureText.Text = ex.Message;
//return false;
}
}以上代码当我在本地的电脑上测试的时候,URL地址是:http://localhost/test.aspx
sendMail("标题", "内容", "[email protected]", "[email protected]", "admin",
"123456", "215.25.2.36");
这时候是能向我的QQ邮箱发送邮件的,发件人也是[email protected],
当是当我把同样的代码放到局域网内的服务器时,URL地址是:http://192.168.1.1/test.aspx
测试的时候却总是发送不了邮件,提示“由于目标机器积极拒绝,无法连接。 215.25.2.36:25 ”请问怎么怎么回事啊?在我的电脑上运行该页面的时候是可以发送邮件的,215.25.2.36这台机器的防火墙中的例外已经加上21和25端口了。
把防火墙关掉试试
还有就是你配邮件服务器的机器是不是另一台机器可以访问