【问题标题】:SMTP email not working in ASP.NET7 + II7, but working in TelnetSMTP 电子邮件在 ASP.NET7 + II7 中不起作用,但在 Telnet 中起作用
【发布时间】:2010-08-12 21:04:54
【问题描述】:

基本上,我们购买了一台带有 Windows Server 2008 R2、IIS 7.5 的新服务器并设置了 SMTP 服务器。没有特殊设置。使用的代码在 Windows Server 2003, IIS6 中运行良好。

这里是设置摘要

  1. 端口 25,全部未分配
  2. 匿名访问
  3. 127.0.0.1 被授予中继访问权限
  4. 为出站设置匿名访问 安全性。

我可以通过 telnet 127.0.0.1 25

发送电子邮件

问题是我无法通过发送朋友 Asp.Net 页面发送电子邮件。

对于 IIS7 中的 ASP.NET SMTP 电子邮件,这是我的设置

  1. 将电子邮件发送到 SMTP 服务器: 127.0.0.1,端口 25
  2. 身份验证设置:不需要

在我的 web.config 中,我有以下内容:

<system.net>
  <mailSettings>
    <smtp>
      <network host="127.0.0.1" port="25" />
    </smtp>
  </mailSettings>
</system.net>

这是代码隐藏代码:

MailMessage M = new MailMessage();
M.Subject = subject;
.To.Add(new MailAddress(e1, f1));
M.From = new MailAddress(sendemail, sendname);
M.ReplyTo = new MailAddress(sendemail, sendname);
M.IsBodyHtml = true;
M.Body = email_message;

SmtpClient sClient = new SmtpClient();
sClient.Send(M);

这是事件日志信息:

工艺信息: 进程 ID:2840 进程名称:w3wp.exe 帐号名称:NT AUTHORITY\NETWORK SERVICE

异常信息:

  • 异常类型:WebException
  • 异常消息:无法连接 到远程服务器

请求信息:

  • 请求网址:...
  • 请求路径:...
  • 用户主机地址:...
  • 用户:
  • 已通过身份验证:错误
  • 身份验证类型:
  • 线程帐户名:NT 授权\网络服务

关于为什么我可以通过 telnet 发送电子邮件但不能通过 asp.net 页面发送电子邮件的任何想法? 同样,这个发送朋友的 aspx 页面在 Windows Server 2003 中运行良好。

我还参考了这个页面,http://forums.iis.net/t/1157046.aspx,我想知道我错过了什么。 谢谢!

【问题讨论】:

    标签: asp.net iis-7 smtp


    【解决方案1】:

    前段时间我也遇到过:

    这对我有用:(您有 2 个 IIS 管理控制台)

    IIS6管理控制台(是IIS 6)右键点击虚拟服务器,选项卡访问,点击连接,授予对127.0.0.1的访问权限,点击中继,授予对127.0.0.1的访问权限。

    说到 IIS7,我真的不太了解,我只是解决我遇到的问题以使我的应用程序正常工作。我的服务器是专业托管的,所以当它不工作时,通常那里的一位管理员会给我一个解决方案,或者我摆弄直到它工作为止。

    【讨论】:

    • 即使是 IIS7,您也需要 II6 managemet 控制台来管理 SMTP 服务。
    猜你喜欢
    • 1970-01-01
    • 2012-08-01
    • 1970-01-01
    • 2013-07-07
    • 1970-01-01
    • 1970-01-01
    • 2017-01-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多