现在很多虚拟主机都是默认不支持 mail() 函数发送邮件的,不过一般都提供 smtp 发件支持。要找一个好用的 smtp 发送邮件方可不容易,不是发件数量限制太小,就是经常被判为垃圾邮件。所以倡萌此前一直在服务器搭建邮件发送功能,并想办法优化提高邮件可行度,避免被判为垃圾邮件,但效果还是不太理想。前些天,想起了阿里云的邮件推送服务,并进行了测试,发现真的不错哦,于是就有了这篇文章。
阿里云的邮件推送服务,每天免费200封,对于一般中小站点来说,基本够用了。即使不够用,花钱购买邮件包也不贵。
1、要了解和开通阿里云邮件推送服务,请查看:https://www.aliyun.com/product/directmail
2、开通以后,在控制台进入“发信域名”新建域名:
3、添加域名后,点击配置,可以查看到域名配置信息
4、按照域名配置信息的提示,到你的域名解析后台添加3条解析记录:
5、添加完解析记录,回到阿里云后台,点击“验证”,返回“验证通过”说明解析生效:
6、切换到“发信地址”界面,新建发信地址:
7、选择刚才添加的发信域名,然后输入你要使用的账号,输入回信地址,选择发信类型:
注:发信类型有:
触发邮件:注册确认、订单确认、密码重置、交易通知等
批量邮件:自有用户的产品促销、期刊订阅等但是有些用户反馈,触发邮件方式不太稳定,你可以根据自己的实际选择吧,这里我选择的是批量邮件
8、添加完返回到界面,点击“验证回信地址”,然后会发送邮件到你的回信地址,到你的邮件箱点击邮件的链接验证通过即可,注意哦,验证邮件可能在垃圾箱里。然后设置SMTP 密码。
9、完成上面的步骤后,阿里云的邮件推送的SMTP发送功能就设置好了
在你的WordPress后台安装一个SMTP插件,比如这里我选择的是 SMTP Mailer ,安装插件后,进入设置界面,按照下图设置smtp信息:
注意:
如果你在其他地方(比如倡萌主题设置界面的高级设置中)修改过“发件人邮箱”和“发件人名称”,请务必将“发件人邮箱”修改为在阿里云后台设置的发信地址,并保证发件人名称的一致性。
10、发送测试邮件,成功后就OK啦
你可以在阿里云的邮件推送后台查看到发送的每封邮件的收件人和发送情况等等,经过几天的测试,发现还是比较稳定的。当然,阿里云的邮件推送也可以在其他支持smtp发送的建站程序中使用!
要了解和开通阿里云邮件推送服务,请查看:https://www.aliyun.com/product/directmail
注意:倡萌在实际测试中,发现有些SMTP插件不管怎么配置都不生效,但是只要使用本文推荐的SMTP Mailer插件就可以,所以建议大家采用SMTP Mailer插件进行配置!
你好,我想请问一下直接给发信邮箱发邮件不会转发到我的回信邮箱,但是回复发信邮箱的邮件会转发到我的回信地址,这种情况有办法处理吗?
回去试试看会不会暴露
会暴露ip吗
现在阿里云的邮件推送功能,不会泄露我们自己网站的IP了
用过一段时间,后来又用网易的免费企业邮了!
在测试发送邮件后提示这样的错误,求助,这是怎么回事
Connection: opening to ssl://smtpdm.aliyun.com:465, timeout=300, options=array ( ‘ssl’ => array ( ‘verify_peer’ => f alse, ‘verify_peer_name’ => false, ‘allow_self_signed’ => true, ),)
Connection: stream_socket_client not available, falling back to fsockopen
Connection: Failed to connect to server. Error number 2. “Error notice: fsockopen() has been disabled for security reasons
SMTP ERROR: Failed to connect to server: (0)
SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
可以转载部分文字吗
不太允许转载文章,谢谢
自己回复评论者消息会显示error,但是消息会发送成功。然后就是前端回复消息也会显示error,但是消息也能回复成功。就是每次回复消息成功都是会提示是错误的。
就是和以前设置的企业邮箱冲突,,,
在测试邮箱发送的时候出现这样错误
Connection: opening to ssl://smtpdm.aliyun.com:465, timeout=300, options=array ()
Connection: opened
SMTP -> get_lines(): $data is “”
SMTP -> get_lines(): $str is “220 smtp.aliyun-inc.com MX AliMail Server(127.0.0.1)”
SERVER -> CLIENT: 220 smtp.aliyun-inc.com MX AliMail Server(127.0.0.1)
CLIENT -> SERVER: EHLO blog.longqiuhong.com
SMTP -> get_lines(): $data is “”
SMTP -> get_lines(): $str is “250-smtp.aliyun-inc.com”
SMTP -> get_lines(): $data is “250-smtp.aliyun-inc.com”
SMTP -> get_lines(): $str is “250-8BITMIME”
SMTP -> get_lines(): $data is “250-smtp.aliyun-inc.com250-8BITMIME”
SMTP -> get_lines(): $str is “250-AUTH=PLAIN LOGIN XALIOAUTH”
SMTP -> get_lines(): $data is “250-smtp.aliyun-inc.com250-8BITMIME250-AUTH=PLAIN LOGIN XALIOAUTH”
SMTP -> get_lines(): $str is “250-AUTH PLAIN LOGIN XALIOAUTH”
SMTP -> get_lines(): $data is “250-smtp.aliyun-inc.com250-8BITMIME250-AUTH=PLAIN LOGIN XALIOAUTH250-AUTH PLAIN LOGIN XALIOAUTH”
SMTP -> get_lines(): $str is “250-PIPELINING”
SMTP -> get_lines(): $data is “250-smtp.aliyun-inc.com250-8BITMIME250-AUTH=PLAIN LOGIN XALIOAUTH250-AUTH PLAIN LOGIN XALIOAUTH250-PIPELINING”
SMTP -> get_lines(): $str is “250 DSN”
SERVER -> CLIENT: 250-smtp.aliyun-inc.com250-8BITMIME250-AUTH=PLAIN LOGIN XALIOAUTH250-AUTH PLAIN LOGIN XALIOAUTH250-PIPELINING250 DSN
Auth method requested: UNKNOWN
Auth methods available on the server: PLAIN,LOGIN,XALIOAUTH
Auth method selected: LOGIN
CLIENT -> SERVER: AUTH LOGIN
SMTP -> get_lines(): $data is “”
SMTP -> get_lines(): $str is “334 dXNlcm5hbWU6”
SERVER -> CLIENT: 334 dXNlcm5hbWU6
CLIENT -> SERVER: Y29zdGE5MkBlbWFpbC5sb25ncWl1aG9uZy5jb20=
SMTP -> get_lines(): $data is “”
SMTP -> get_lines(): $str is “334 UGFzc3dvcmQ6”
SERVER -> CLIENT: 334 UGFzc3dvcmQ6
CLIENT -> SERVER: bG9uZzE5OTIwNjIw
SMTP -> get_lines(): $data is “”
SMTP -> get_lines(): $str is “235 Authentication successful”
SERVER -> CLIENT: 235 Authentication successful
CLIENT -> SERVER: MAIL FROM:
SMTP -> get_lines(): $data is “”
SMTP -> get_lines(): $str is “436 “MAIL FROM” doesn’t conform with authentication [@sm060104] (Auth Account:costa92@email.231.com|Mail Account:944310536@qq.com)”
SERVER -> CLIENT: 436 “MAIL FROM” doesn’t conform with authentication [@sm060104] (Auth Account:1233@email.longqi2123uhong.com|Mail Account:12323@qq.com)
SMTP ERROR: MAIL FROM command failed: 436 “MAIL FROM” doesn’t conform with authentication [@sm060104] (Auth Account:costa92@email.1234.com|Mail Account:123456@qq.com)
The following From address failed: 944310536@qq.com : MAIL FROM command failed,”MAIL FROM” doesn’t conform with authentication [@sm060104] (Auth Account:costa92@email.longqiuhong.com|Mail Account:123456@qq.com),436,SMTP server error: MAIL FROM command failed Detail: “MAIL FROM” doesn’t conform with authentication [@sm060104] (Auth Account:costa92@ema.com|Mail Account:123456@qq.com) SMTP code: 436
To
Email address of the recipient
Subject
Subject of the email
Message
Email body
首先,请确保你的整个阿里云界面的设置没有问题;
其次,确保只在一个地方设置了smtp信息。如果你还在主题或其他插件中设置了不一样的smtp信息,可能冲突。
最后,确保你设置的域名邮箱等都是可正常使用的。
一样 出现这个情况,发信不了,然后再后台-常规-电子邮件地址 把邮箱换成阿里云发信邮箱后 可以发信,但是还是出现这个提示
你的发信地址不对,设置和发信账户一样,就可以了!
暂时还不想用和用不上,这个评论回复邮件通知功能。