一直觉得如果Typecho有一个评论回复邮件通知,基本就可以算是完美了。尝试了CommentToMail插件,并不理想,四处找寻,终于找到了一个完美的解决方案——CommentMailPlus。
CommentToMail体验不佳
CommentToMail插件原本由 DEFE (http://defe.me)开发,随后由 byends (http://typecho.byends.com)继续维护更新,目前最新版停留在2014-04-25的2.0.0。这款插件的主要问题在于:1.异步发送,受限很多,失败率高;2.采用腾讯/网易等STMP服务器非常不稳定。我在自己尝试时,首先腾讯的SMTP从未成功过,网易的SSL则只成功过一次,即便在插件自带的测试中完成发送,实际评论时却依旧无法发送邮件,错误日志显示socket错误。
我后来也曾联系过byends不过没有回复,另一位使用typecho的博主也表示反馈过问题不过一直未得到解决。后来我在Google搜索这一问题,发现了这样一篇博文:《Typecho的CommentToMail插件不支持https的问题》,而我再一看发现该博主的博客目前还是启用SSL的,或许他已经解决了这一问题?抱着尝试的心态,我联系了博主,没想到是个大牛(。・∀・)ノ゙,他向我推荐了他开发的插件——CommentMailPlus。
CommentMailPlus
Github:https://github.com/oott123/CommentMailPlus
安装方法
在typecho/usr/plugins/下新建一个CommentMailPlus文件夹,将git中的所有文件放入,在后台安装插件即可。
适用环境
此方法发送邮件利用curl库连接MailGun的HTTPS服务,具有到达率高,延迟低等特点,适合于无法使用SMTP的使用者使用。
如果你想使用MailGun的服务而没有curl库,可以尝试安装CommentToMail插件,然后参考MailGun User
Manual上的相关说明设置SMTP服务。经测试,SAE可用。
经测试,我在VPS上搭建的LAMP环境(PHP 5.6)下也完全没有问题!
10 comments
噗,那个 "MailGun API 密钥" 去官网申请还要信用卡,.....
mailgun的免费用户是不是不能发信给别人呀?为什么我回复别人的评论都是reject。Free accounts are for test purposes only. Please upgrade or add the address to authorized recipients in Account Settings.
你好,非也,只是因为你的账户还有完成验证,具体可以参考这里:ihewro.com/archives/684/
绑定自定义域名也可以给腾讯发信,好像是这样的
目前用Mailgun还行,不折腾了,不过腾讯的邮箱对IP有限制,同一IP向它发送多了就会被限制频率,所以Mailgun这边免费用户因为共享同一发信服务器IP的关系,经常会产生发送数十次才发送成功的情况,其他邮箱都没问题。。Mailgun买独立IP又特别贵。。
我用这个插件了,甚至我都把API KEY都加上了,依然无法收到邮件!郁闷呀!
看了你的博客,其实腾讯也不算屏蔽Mailgun,只是它有自己的一个规则,详见:http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=20022&&no=1000725,而Mailgun免费版恰恰就是共享发信IP的。。不过我这边体验下来,是会有延迟,但不至于收不到,最多的一次Mailgun重试了15次后发送成功,每次间隔10分钟。。。
我这边测试没问题噢,你这条评论我就收到通知了~
原来是这样。怪不得我说怎么老显示socket错误呢。。我直接换成Comment2Wechat 评论微信通知了。