Loading... ## 前言 由于最近博客搬家,事情也变得多了起来,各种踩坑,例如前一片文章提到的sever酱无法正常推送的问题,最后发现是sever酱所调用的PHP函数被AppNode默认给禁用了,当然,问题肯定不止这一个,还有个问题就是博客的邮件提醒插件CommentToMail也一并失效,当时我第一反应是检查插件设置,发现后台发信测试正常,评论里却无法触发邮件提醒,我一直在用的是CommentToMail 2.0.1版本,于是便翻阅作者的文档,如下图 ![][1] ## 过程 接着我就去检查作者文档中所提到的3个php函数,发现并没有被禁用,(黑人问号),这个插件有3个版本,于是便换成2.0原版进行测试,依旧是无法正常发信,后台测试正常,这是作者原文中的一段话:早期版本中邮件发送失败一个很重要的原因是,异步触发失败导致邮件不能发送,而CommentToMail v4.1另辟蹊径,采用网站监控程序触发的方式发送邮件。最后在友链大佬小代理の记事薄的帮助下解决了这个问题。 ## 解决方案 ---- ``` 更换插件为`4.1`版本,并在面版添加计划任务: curl 'https://你的域名/action/comment-to-mail?do=deliverMail&key=[你的key]' 注意:实际执行的时候是不需要[]的,请务必删除! 如果面板开启了CC防护,请将服务器IP添加至白名单 ``` [1]: https://mikuac.com/usr/uploads/2018/02/3862145981.png 最后修改:2020 年 09 月 16 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 0 如果觉得我的文章对你有用,请随意赞赏
32 条评论
请问博主如何验证那三个函数有没有被禁用啊,把代码加在什么文件上,我用腾讯企业邮设置了smtp,但一直提示smtp connect failed。
我这篇文章是指后台测试发信正常,评论无法触发发信的教程,提示smtp connect failed()请检查邮件后台设置和文章中提到的3个函数是否被禁用
curl https://www.heroyf.club/action/comment-to-mail?do=deliverMail&key= 这个网址的计划任务我也添加了,日志显示信息如下【{"result":true,"amount":0,"success":{"amount":0,"id":[]},"fail":{"amount":0,"id":[]}}----------------------------------------------------------------------------
★[2018-02-21 22:57:01] Successful】
函数有没有被禁用请根据你使用的面板来找相应的位置,代码是加在面板的计划任务里的,每5分钟访问一下这个链接即可,但是必须得用4.1版本的插件,因为只有4.1版本支持监控,防止异步触发失败导致发信失败,提示smtp connect failed()的话是无法链接到服务器,请检查邮件后台设置和文章中提到的3个函数是否被禁用
博主我将测试的源代码加入计划任务,但是执行后脚本报错了QAQ,报错信息如下【syntax error near unexpected token `'fsockopen'' ` if (function_exists('fsockopen')) {'】 是这个函数被禁用了吗?QAQ
测试
fsockopen 这个函数检查下 还有计划任务两个单引号别去掉 curl '网址+key' 这样写
fsockopen应该没被禁用,查看php.ini里面disable_function没有这个函数,执行curl '网址+key'日志返回的结果就是successful,我也不知道为啥测试就一直smtp connection failed我好心累啊
开了CC防护没,把服务器IP加入白名单试试
发不出去,愁死了
我用的是宝塔面板就开启了firewalld,放行了ssl连接用的465端口,不知博主说的把服务器ip是自己博客的服务器ip地址加入白名单吗?
如果你是用的是宝塔面板,那么宝塔面板的PHP7.0由于编译问题,函数是无效的。。请换用PHP7.1或5.6尝试
宝塔面板?php版本多少,对的,博客服务器ip加入CC白名单
我猜想可能是阿里云的主机有毒吧心好累啊。不知道原因
我看了文章,用的php版本是7.1.14的,我把服务器ip也加入白名单了,不知道这个命令是否正确firewall-cmd --permanent --zone=work --add-source=服务器ip/24
这就不太清楚了,可以尝试换163邮箱试试
163的普通邮箱也是可以的吗,还是需要企业邮箱
普通邮箱即可 SMTP地址:smtp.163.com 端口:465 ssl加密勾上
好滴!用户名就是自己的163邮箱名是吧~
邮箱账号 @163.com这个
好的,谢谢博主了,感动的痛哭流涕
多来逛逛就好了23333
我把博主的博客设置为友链啦~
我们可以互换友链
网站:www.heroyf.club
添加完成
换成163就成功了吐血
猜到了,哈哈哈,所以让你换163试试
哈哈哈评论无法触发
那就添加计划任务
看了也不懂
看了也不懂就别说话
那么凶干啥