开发者社区> 问答> 正文

windows虚拟主机利用发信组件通过企业邮局的身份验证方法发送邮件

已解决

展开
收起
2018-01-16 15:52:52 774 0
1 条回答
写回答
取消 提交回答
  • 采纳回答

    详细解答可以参考官方帮助文档

    如果您已经申请购买cdo发信组件(win2000:CDONTS或者win2003:CDOSYS),并使用企业邮局接收邮件,由于邮局服务端具备本地身份验证规则,如果投递服务器(您的站点)域名与企业邮箱域名相同情况下,您的站点投递的邮件就会因无法通过企业邮局的本地身份验证而被拒绝。给您带来的问题是:“如何通过验证并保证我的正常工作呢?”

     我们只需要在发信组件程序模板上稍作修改就可以解决,具体方法如下:

    一、CDONTS发信组件

    你可以用下面的脚本样例通过ASP发送E-MAIL

     

    <%

    set newmail=server.CreateObject("cdonts.newmail")

    newmail.From="webmaster@www.yourdomain.com"      //以主机名方式发送,此方法可以通过服务端本地身份验证

    newmail.value("Reply-To")="test@test.com"    //默认回复地址(发件人提交的地址),避免被回复至"webmaster@www.yourdomain.com"

    newmail.To = webmaster@yourdomain.com         //企业邮局收件人地址

    newmail.Subject="主题"

    newmail.Body = "asp mail"

    newmail.BodyFormat =0

    newmail.MailFormat =0

    newmail.Send

    response.write "send ok!"

    set newmail=nothing

    %>

    二、CDOSYS发信组件

    <%

    你可以用下面的脚本样例通过ASP或者ASPX发送E-MAIL

    <% p="">

    '以下部分为系统配置,请勿更改

    Set objMail = Server.CreateObject("CDO.Message")

    Set objCDOSYSCon = Server.CreateObject ("CDO.Configuration")

    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25

    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 1

    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60

    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverpickupdirectory") = "c:\InetpubmailrootPickup"

    objCDOSYSCon.Fields.Update

    Set objMail.Configuration = objCDOSYSCon

    '系统配置结束

    '以下为用户自行更改部分,请由程序员进行修改

    objMail.From = "webmaster@www.yourdomain.com"   //以主机名方式发送,此方法可以通过服务端本地身份验证

    objMail.Fields("urn:schemas:httpmail:reply-to") ="test@test.com"    //默认回复地址(发件人提交的地址),避免被回复至"webmaster@www.yourdomain.com"

    objMail.Subject = "win2003发信组件测试"

    '把下面的email改成自己的

    objMail.To = webmaster@yourdomain.com         //企业邮局收件人地址

    objMail.TextBody = "win2003测试发信组件正常"

    objMail.Send

    Set objMail = Nothing

    Set objCDOSYSCon = Nothing

    %>


    <% p="">

    以上方法实际上是在原有样例的基础上,通过修改发件人地址,以及增加设置默认回复的方法来实现的,请您参考测试。

     

    如问题还未解决,请联系售后技术支持


     

     


    2018-01-18 04:36:51
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
《云服务器运维之Windows篇》 立即下载
TAKING WINDOWS 10 KERNEL 立即下载
ECS运维指南之Windows系统诊断 立即下载