我有一个运行IIS的Windows Server 2003 R2和一个使用经典ASP的网站。 试图让它使用CDOSYS通过我们自己的(外部)托管的office365交换服务器发送电子邮件。
我收到以下错误
CDO.Message.1 error '80040213'
The transport failed to connect to the server.
这通常意味着3个问题之一: 1. SMTP服务器/端口不正确 2.登录/密码不正确 3. FROM地址无效,根据SMTP服务器(错误的域名)
根据供应商,SMTP服务器和端口是正确的。 登录/密码是正确的,因为我可以使用这些详细信息登录邮件帐户 FROM地址是正确的,因为那是我用来登录的帐户。
我可以从该地址和端口上的Web服务器远程登录到Exchange服务器,因此至少可以从服务器建立连接。
所以目前我不知道问题可能是什么。 有没有人对我需要注意的任何事情有任何指示?
这是网站使用的配置
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusing")=2
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserver")="smtp.office365.com"
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport")=587
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 20
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendusername") = "username"
myMail.Configuration.Fields.Item ("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"
答案 0 :(得分:0)
您是否在Office 365中设置了SMTP中继?
从Office 365管理员转到:
答案 1 :(得分:0)
尝试Fields.Item ("http://schemas.microsoft.com/cdo/configuration/smtpserverport")=25
使用Office 365,即使使用身份验证,cdo似乎也更喜欢端口25。
如果有帮助的话,这是一个久经考验的配置
Set iConfg = Server.CreateObject("CDO.Configuration")
Set Flds = iConfg.Fields
With Flds
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.office365.com"
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
.Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60
.Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = true
.Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "myusername"
.Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "mypassword"
.Update
End With
objMail.Configuration = iConfg
答案 2 :(得分:0)
好吧,我最终解决了这个问题。 我需要使用不同的方法连接到office365服务器。 所以现在一切正常。
答案 3 :(得分:0)
尝试
.Item("http://schemas.microsoft.com/cdo/configuration/smtpsendtls") = 1
代替
.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = 1