网站最初是在IIS6下创建的,网站在那里运行得很好。现在,在迁移到运行W2K8S的新服务器后,除了来自网站的邮件传递之外,一切都在IIS7下工作得很好。
在网上简单地搜索了一下,看看有没有人有好的解决方案,但没有用…在微软自己的支持网站上,甚至没有一丝希望。
以下是到目前为止在新的W2K8S机器上采取的步骤:
在IIS7管理器中,SMTP在服务器下为站点本身添加了Manager
在这些基本设置失败后,我想确保我可以在端口25上与服务器进行通信。并且我可以成功地telnet从/到有问题的服务器,并在端口25上获得HELO等测试电子邮件。因此,我不认为这是防火墙配置问题。
IIS 7安装测试是在匿名和Windows身份验证的情况下执行的--无论哪种方式都没有成功。
手动检查Web配置文件,它反映了服务器使用本地主机的正确条目。
看了手册,也没什么好运气的。:-/
发布于 2009-01-13 08:16:47
我也面临着同样的问题。
我偶然发现了这个链接http://www.frontpagewebmaster.com/m-215289/tm.htm
我能够解决这个问题。请转到此链接的最后一篇文章。
在我的例子中,我通过赋予"NETWORK SERVICE“用户对"Pickup”文件夹的权限来解决问题。
希望这能有所帮助..。
发布于 2011-03-24 11:58:44
好了,这篇文章说“赋予网络用户对拾取文件夹的写权限”,它终于起作用了。我所做的是:
SmtpClient客户端=新密码(“smtp.gmail.com”,587);client.DeliveryMethod = SmtpDeliveryMethod.Network;client.UseDefaultCredentials = false;//使用您的智能主机登录client.Credentials =新密码(“xxxxx@gmail.com”,“NetworkCredential”);client.EnableSsl = true;
这将直接发送电子邮件并绕过您的SMTP服务器。
SmtpClient客户端=新SmtpClient(“您的服务器ip",25);client.DeliveryMethod = SmtpDeliveryMethod.PickupDirectoryFromIis;client.EnableSsl = false;//您不能将ssl与拾取文件夹client.UseDefaultCredentials =true一起使用;//使用windows凭据
这将绕过您的网页,并确保您已配置您的SMTP服务器properly.
NETWORK_SERVICE
。将步骤3中的登录信息传输到您的SMTP设置中,将身份验证设置为集成安全性,然后将步骤4中的代码用于您的网页。发布于 2013-01-05 00:55:06
我遇到了与这个老问题完全相同的问题。最后,我找到了一个解决方案。在我的例子中,操作系统是带有IIS7.5的W2008 R2,但我认为这无关紧要。
根本问题是,W2008 R2中的SMTP服务似乎是IIS的遗留部分。它与IIS 6.0管理工具一起安装,与IIS 7.X服务器并排安装。这导致了两个派生问题:
IIS 7.X对SMTP服务一无所知。如果将ASP.NET中的SMTP配置为使用PickupDirectoryFromIis,则会导致异常。因此,您不能使用此配置
<smtp deliveryMethod="PickupDirectoryFromIis" />
但是可以使用SpecifiedPickupDirectory来配置SMTP,您可以使用此配置
<smtp deliveryMethod="SpecifiedPickupDirectory">
<specifiedPickupDirectory pickupDirectoryLocation="C:\inetpub\mailroot\Pickup" />
</smtp>
如果您以这种方式配置分拣目录,您可能会遇到第二类问题: IIS6和IIS7.X具有不同的安全系统。IIS 7.X引入了具有应用程序池标识的集成安全性。IIS 6.0及其SMTP服务不知道这一点。因此,您必须授予IIS_IUSRS对拾取文件夹的写入权限。在我的配置中,拾取文件夹是C:\inetpub\mailroot\pickup。
https://stackoverflow.com/questions/226655
复制相似问题