Loading... <div class="tip share">请注意,本文编写于 2633 天前,最后修改于 905 天前,其中某些信息可能已经过时。</div> CommentToMail作为一款老牌Typecho邮件通知评论的插件,也有很多分支。 <!--more--> <button class=" btn m-b-xs btn-info btn-addon" onclick="window.open('https://github.com/uniartisan/CommentToMail','_blank')"><i class="fontello fontello-cogs"></i>Github 项目链接</button> <button class=" btn m-b-xs btn-success btn-addon" onclick="window.open('https://github.com/uniartisan/CommentToMail/releases','_blank')"><i class="fontello fontello-cogs"></i>戳此下载插件</button> --- **在反馈任何问题以前,请您认真查看:提问的艺术** <button class=" btn m-b-xs btn-info btn-addon" onclick="window.open('https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart-Way/blob/master/README-zh_CN.md','_blank')"><i class="fontello fontello-cogs"></i>How-To-Ask-Questions-The-Smart-Way</button> --- **版权申明** 1.插件原版本及作者相关信息保留在插件文件的作者信息下方 2.[PHP Mailer](https://github.com/PHPMailer/PHPMailer/) 文件来自于 GitHub 3.转载或重制请保留作者信息 ## 使用方法 1.下载插件,将插件上传到 /usr/plugins/ 目录下,修改主题模板comments.php文件,在评论form表单的适当位置添加name为receiveMail的选择框(checkbox),请注意:下方两种代码,你只能选择一个添加到主题模板文件,一般建议你选择默认接收邮件。**如果您在插件设置中开启强制忽略用户选择,您可以跳过这一步。** - 正常显示选择框: `<input type="checkbox" name="receiveMail" id="receiveMail" value="yes" checked /> <label for="receiveMail" style="padding-left:8px;">当有人回复时接收邮件提醒</label>` - 隐藏选择框(默认接受邮件): `<input type="hidden" name="receiveMail" id="receiveMail" value="yes" />` 下面我以handsome主题作为例子: ![IMG_0301.PNG][2] 选中第二个文件夹,找到comments.php ![IMG_0302.PNG][3] 定位到下图所示位置: ![IMG_0285.JPG][4] 在上图主题文件评论框的input下方插入代码即可(任意一个input都行,不过为了方便,可以添加在邮件那行下方),不过每次主题更新后可能需要重新设置。 (请注意:Handsome主题自4.1.x版本开始,增添对本插件的支持,无需再次修改文件!) ![IMG_0303.PNG][5] 设置完如上图所示,保存好文件!到这一步,你已经成功了一半。 2.后台启用相关插件 3.设置smtp服务器地址、邮箱地址、密码等信息 4.设置cron监控 监控的网址就是插件设置后台的任务执行地址加上你自己设置的Key(注意,任务执行链接不包含【 】,如:http://baidu.com/index.php/action/comment-to-mail?do=deliverMail&key=123456 将下面的代码设置成每 5 分钟运行一次即可(需要修改成自己的网址),可以使用 crontab 或者使用面板提供的定时任务功能。 ``` curl -k "https://example.com/action/comment-to-mail?do=deliverMail&key=114514" >> ./log.txt ``` ## 常见问题 1.Key是邮件任务执行密码,防止他人恶意执行任务消耗资源 2.下方任务执行地址就是说当你访问这个网址时,邮件任务才会执行,为了达到自动发送的效果,我们设置cron或者网址监控,每隔一段时间让远程服务器代替你访问任务执行网址 3.执行验证是用来调试和应对特殊环境,一般不要勾选! 4.可以清理邮件发送信息 5.QQ邮箱smtp密码需要在邮箱网页端获取,具体配置信息可以参考度娘 6.测试普通QQ邮箱可以正常发送,但可能由于腾讯反垃圾邮件逻辑,用户不能正常接受邮件,建议大家使用QQ域名邮箱,如果你没有域名邮箱,可以通过邮件联系我,或者直接在下方留言 7.本插件仅支持typecho1.0及之后版本 8.如果出现 邮件发送失败:SMTP connect() failed. (PHP>=5.6)可以参考这篇博文 https://9sb.org/45 ## 写在最后 --- **在反馈任何问题以前,请您认真查看:提问的艺术** [How-To-Ask-Questions-The-Smart-Way](https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart-Way/blob/master/README-zh_CN.md) --- [1]: https://krait.cn/ [2]: https://blog.uniartisan.com/usr/uploads/2017/10/3483950311.png [3]: https://blog.uniartisan.com/usr/uploads/2017/10/1923621872.png [4]: https://blog.uniartisan.com/usr/uploads/2017/10/4292525936.jpg [5]: https://blog.uniartisan.com/usr/uploads/2017/10/2980327494.png [6]: https://blog.uniartisan.com/usr/uploads/2017/10/2199260941.png [7]: https://blog.uniartisan.com/usr/uploads/2017/10/2123489929.png [8]: https://blog.uniartisan.com/usr/uploads/2017/10/3967795832.png [9]: https://blog.uniartisan.com/usr/uploads/2017/10/1972513749.png [10]: https://blog.uniartisan.com/usr/uploads/2017/12/2407010643.png Last modification:June 3, 2022 © Allow specification reprint Support Appreciate the author AliPayWeChat Like 5 If you think my article is useful to you, please feel free to appreciate
219 comments
邮件发送失败:SMTP connect() failed. https://github.com/PHPMailer/PHPMailer/wiki/Troubleshooting
在wordpress中的邮箱插件,使用tls可以发送,但是在这个插件就这样了
能否告知是什么邮件厂商 PHP版本等环境,方便我调试。
office365(exchange online)(我给你的账号没有),php7.4
SMTP connect() failed 并不是插件问题,这种问题几乎总是由本地DNS故障,防火墙阻塞(例如GoDaddy,腾讯云)或本地网络上的其他问题导致。这意味着PHPMailer无法联系您在Host属性中指定的SMTP服务器,但并不确切地说明原因。也可能是由于没有openssl加载扩展程序引起的。请您联系您的服务器供应商开启相应端口,当然也可能是由于防火墙阻断了向境外SMTP服务器的包。
dns是可以的,而且之前wordpress时使用smtp插件是可以的
我这边没有账号测试,按照 最新PHPMailer 手册完成了 tls 的接入,所以应该不是插件的问题。您可以考虑换域名邮箱。
博主你好,我想请教一下这个插件要怎么用,一直弄不好。 提示内容是{"result":true,"amount":0,"success":{"amount":0,"id":[]},"fail":{"amount":0,"id":[]}}
请问您有严格按照教程吗?方便的话请开启调试模式记录日志并贴给我。
我的发信 smtp 加密一直都是 ssl 的,tls 应该比较旧吧,完全不懂呢。|´・ω・)
TLS是SSL的后继产品,提升了安全性。 ∠( ᐛ 」∠)_
SSL vs TLS vs STARTTLS
SSL和TLS版本之间的版本编号不一致,从旧到最新的协议顺序为:SSL v2,SSL v3,TLS v1.0,TLS v1.1,TLS v1.2。
你这么说我就想起来了,上 myssl.com 的时候看到过。v1.3 也出来好久了
可以添加starttls的支持吗
您好,暂时不予支持。
旧版的 PHPMailer 的类中无 StartTLS 的支持,暂未在 Github 上获取到新版本的 Class 文件,如果采用完整 PHPMailer 重新构建 Class 开发量较大,对于我(蒻暨)可能来说有些困难。
那tls的支持呢?
您好,现已支持。您可以删除插件目录后重新上传启用。|´・ω・)ノ
你好!我想请教一下
我在控制台内测试邮件发送时会报HTTP 500
有什么解决方案吗
您好,您看一下服务器的安全组设置。将 993、994、465、25、110等相关端口打开。
具体需要看您邮件服务器的端口。
不过经过测试是可以正常使用derヾ(≧∇≦*)ゝ
只有测试邮件会error
悄咪咪和你说更新了新版本噢(╯‵□′)╯︵┴─┴
好de!我看看
一下就配置好了,真棒的插件
哈哈哈哈ヾ(≧∇≦*)ゝ
你好请教下 我可以正常接收收发邮件了 请问我访问执行那个key的地址 https://kylin.moe/index.php/action/comment-to-mail?do=deliverMail&key=[yourKey]按照格式 替换了然后访问无法访问返回 {"result":true,"amount":0,"success":{"amount":0,"id":[]},"fail"{"amount":0,"id":[]}} 请问我一定要设置监控才可以吗? 另外 那个美化模板页面是怎么看到的 收到邮件了力只有文字
解决了就好,是一定要有监控的,我本人是宝塔定时任务,最近很忙没怎么看博客的邮件
ok谢谢博主,我一开始没加监控没反应,后来加了阿里云的云监控解决了,宝塔的定时任务还没有尝试过,我现在用的宝塔后台.
执行页面打不开显示 "result":0,"msg":"No permission"} 我用的宝塔 centos7.5 php5.6 阿里云
使用阿里云监控解决了楼主把评论删了吧
你好博主,我在使用这个插件后发现一些问题:
当文章被评论后,正常收到了owner.html这个模板的邮件,然后我回复了评论,以guest.html这个为模板的邮件也正常发送,但是当我的评论被回复后,我收到了以guest.html为模板的邮件,我在设置中区分了接收邮件的地址,所以这个情况中我的评论被当成了访客来处理,请问这个问题我该怎么解决?
系统:
CentOS 7
PHP 7.1
这个邮件插件一开始最初的设计就是这个样子的,只有第一层直接评论文章才会触发owner.html,其它被评论回复的都是guest.html