代码之家  ›  专栏  ›  技术社区  ›  Waleed Eissa

iis7中的smtp有问题

  •  1
  • Waleed Eissa  · 技术社区  · 15 年前

    我有一个ASP.NET应用程序,它在我的Windows XP开发人员计算机上运行良好,但在部署到带有iis7的Windows 2008时不工作。该应用程序在iis7上使用smtpdeliveryMethod.pickupdirectoryFromis,并在尝试从该应用程序发送电子邮件时出错(smtpexception,消息为“cannot get iis pickup directory”)。我在dev机器和服务器上使用相同的设置。

    任何帮助都会非常感谢…

    4 回复  |  直到 15 年前
        1
  •  4
  •   Waleed Eissa    15 年前

    原来这是一个权限问题,但不是拾取目录,而是元数据库(SMTP设置仍保存在iis7的元数据库中)

    我看到了这个论坛的主题, Cannot get IIS pickup directory. NEED HELP ,然后在IIS.NET论坛网站上,按照文章中提到的内容,下载并安装元数据库资源管理器工具(您必须下载iis6资源工具包才能获得它),然后在ls、smtpsvc和smtpsvc/1键上向我的自定义用户(如其中一篇文章中所示)授予读取权限,它工作正常。由于一些未知的原因,如果您只授予smptsvc密钥权限,它将无法工作。

        2
  •  -1
  •   Çağdaş Tekin    15 年前

    我认为问题可能在于信任程度。

    因为在中级信任中,您只能写入应用程序的目录(或该目录下的任何目录)。如果指定的分拣文件夹不在应用程序的目录中 应用程序正在中等信任(不是完全信任)下运行,因此您无法写入拾取文件夹。

        3
  •  -2
  •   123    15 年前

    您可以直接发送到SMTP服务器,而不使用分拣目录。

        4
  •  -2
  •   Raúl Roa    15 年前

    您需要首先指定拾取目录。这里有一个 guide 关于如何做。

    此外,将xp盒上的IIs5.1与WindowsServer2008(IIs7)上的IIs5.1进行比较也不是一个好主意,因为除了明显的版本差异之外,许多功能也发生了很大的变化。特别是SMTP服务器,例如,在Vista中没有这样的功能。