最近一直折腾着某些邮箱无法发送成功的事情,对于邮件的各方面的知识学习了一下。现在整理一下方面自己或者别人学习。
首先用的是JavaMail发送邮件的,所以先收藏下JavaMail API
既然打算用SMTP协议发邮件,那么先得分析下SMTP协议,以及有关Email邮件头的知识,还有最基础的邮件/域名/DNS的相关知识。
一般主要用的MTA(Mail Transfer Agent)软件有:PostFix,SendMail,QMail,Coremail,Exchange,Lotus Domino。
其中PostFix,SendMail,QMail适用于Linux或者Unix系统服务器下使用,Exchange,Lotus Domino适用于大型企业。另外对于小企业,特别是window系统下,WinMail,WinWebMail,MuseMail比较适合,当然了,MTA软件有很多,具体看需要来选择。WinMail的smtp配置大概是这样子的。
比较烦恼的是你通过MTA软件架构一个独立的邮件服务器之后,发送邮件之后就会碰到邮件发送不成功的问题,这时候就需要通过日志,退信,或者抓包工具分析原因啦。先了解下Email发送失败的原因,再对应查看下国内常用的smtp服务器错误代码,WinMail退信大全,找到发送错误的代码,从而进一步采取措施。
如何使你发送的邮件不会成为垃圾邮件呢?之前我真没去了解垃圾邮件的概念,现在通过查资料已经了解一二啦。
垃圾邮件在中国的定义主要有这两种:
垃圾邮件的定义:
中国电信对垃圾邮件的定义
“向未主动请求的用户发送的电子邮件广告、刊物或其他资料;没有明确的退信方法、发信人、回信地址等的邮件;利用中国电信的网络从事违反其他ISP的安全策略或服务条款的行为;其它预计会导致投诉的邮件。”
中国互联网协会对垃圾邮件的定义
“本规范所称垃圾邮件,包括下述属性的电子邮件:
(一)收件人事先没有提出要求或者同意接收的广告、电子刊物、各种形式的宣传品等宣传性的电子邮件;
(二)收件人无法拒收的电子邮件;
(三)隐藏发件人身份、地址、标题等信息的电子邮件;
(四)含有虚假的信息源、发件人、路由等信息的电子邮件。”
反垃圾邮件和防止邮件被当成垃圾邮件都需要先应该读懂Email邮件头。最好读下电子邮件的标准格式。从这些信件头信息中可以收获一些有用的信息。 另外像SPF,DKIM这些东西也要了解了下。下面就是些不错的资料
感觉这个邮件深入研究下去自己需要学习的东西太多啦,自己学习这个目的是为了解决工作中的问题,先放一放,有深入的机会再去钻研。下面是三个有关邮箱,邮件这方面的专业网站,自己很多信息都是来源于此的。