一直觉得如果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)下也完全没有问题!
9 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 评论微信通知了。