SimpleZero

CommentToMail插件无法正常触发的解决方案
前言由于最近博客搬家,事情也变得多了起来,各种懵逼,例如前一片文章提到的sever酱无法正常推送的问题,最后发现是...
扫描右侧二维码阅读全文
19
2018/02

CommentToMail插件无法正常触发的解决方案

前言

由于最近博客搬家,事情也变得多了起来,各种懵逼,例如前一片文章提到的sever酱无法正常推送的问题,最后发现是sever酱所调用的PHP函数被AppNode默认给禁用了,当然,问题肯定不止这一个,还有个问题就是博客的邮件提醒插件CommentToMail也一并失效,当时我第一反应是检查插件设置,发现后台发信测试正常,评论里却无法触发邮件提醒,我一直在用的是CommentToMail 2.0.1版本,于是便翻阅作者的文档,如下图
TIM20180219181003.md.png

过程

接着我就去检查作者文档中所提到的3个php函数,发现并没有被禁用,(黑人问号),这个插件有3个版本,于是便换成2.0原版进行测试,依旧是无法正常发信,后台测试正常,这是作者原文中的一段话:早期版本中邮件发送失败一个很重要的原因是,异步触发失败导致邮件不能发送,而CommentToMail v4.1另辟蹊径,采用网站监控程序触发的方式发送邮件。最后在友链大佬小代理の记事薄的帮助下解决了这个问题。

解决方案


更换插件为`4.1`版本,并在面版添加计划任务:
curl 'https://你的域名/action/comment-to-mail?do=deliverMail&key=[你的key]'
注意:实际执行的时候是不需要[]的,请务必删除!
如果面板开启了CC防护,请将服务器IP添加至白名单
最后修改:2018 年 12 月 10 日 11 : 42 PM
如果觉得我的文章对你有用,请随意赞赏

发表评论

31 条评论

  1. heroyf
      Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.119(Google Chrome 64.0.3282.119)

    请问博主如何验证那三个函数有没有被禁用啊,把代码加在什么文件上,我用腾讯企业邮设置了smtp,但一直提示smtp connect failed。

    1. SimpleZero
        Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
      @heroyf

      我这篇文章是指后台测试发信正常,评论无法触发发信的教程,提示smtp connect failed()请检查邮件后台设置和文章中提到的3个函数是否被禁用

      1. heroyf
          Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.119(Google Chrome 64.0.3282.119)
        @SimpleZero

        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】

    2. SimpleZero
        Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
      @heroyf

      函数有没有被禁用请根据你使用的面板来找相应的位置,代码是加在面板的计划任务里的,每5分钟访问一下这个链接即可,但是必须得用4.1版本的插件,因为只有4.1版本支持监控,防止异步触发失败导致发信失败,提示smtp connect failed()的话是无法链接到服务器,请检查邮件后台设置和文章中提到的3个函数是否被禁用

      1. heroyf
          Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.119(Google Chrome 64.0.3282.119)
        @SimpleZero

        博主我将测试的源代码加入计划任务,但是执行后脚本报错了QAQ,报错信息如下【syntax error near unexpected token `'fsockopen'' ` if (function_exists('fsockopen')) {'】 是这个函数被禁用了吗?QAQ

        1. SimpleZero
            Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
          @heroyf

          测试

        2. SimpleZero
            Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
          @heroyf

          fsockopen 这个函数检查下 还有计划任务两个单引号别去掉 curl '网址+key' 这样写

          1. heroyf
              Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.119(Google Chrome 64.0.3282.119)
            @SimpleZero

            fsockopen应该没被禁用,查看php.ini里面disable_function没有这个函数,执行curl '网址+key'日志返回的结果就是successful,我也不知道为啥测试就一直smtp connection failed我好心累啊

            1. SimpleZero
                Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
              @heroyf

              开了CC防护没,把服务器IP加入白名单试试

              1. heroyf
                  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.119(Google Chrome 64.0.3282.119)
                @SimpleZero

                我用的是宝塔面板就开启了firewalld,放行了ssl连接用的465端口,不知博主说的把服务器ip是自己博客的服务器ip地址加入白名单吗?

                1. SimpleZero
                    Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
                  @heroyf

                  如果你是用的是宝塔面板,那么宝塔面板的PHP7.0由于编译问题,函数是无效的。。请换用PHP7.1或5.6尝试

                2. SimpleZero
                    Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
                  @heroyf

                  宝塔面板?php版本多少,对的,博客服务器ip加入CC白名单

                  1. heroyf
                      Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.119(Google Chrome 64.0.3282.119)
                    @SimpleZero

                    我猜想可能是阿里云的主机有毒吧心好累啊。不知道原因

                    1. SimpleZero
                        Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
                  2. heroyf
                      Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.119(Google Chrome 64.0.3282.119)
                    @SimpleZero

                    我看了文章,用的php版本是7.1.14的,我把服务器ip也加入白名单了,不知道这个命令是否正确firewall-cmd --permanent --zone=work --add-source=服务器ip/24

                    1. SimpleZero
                        Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
                      @heroyf

                      这就不太清楚了,可以尝试换163邮箱试试

                      1. heroyf
                          Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.119(Google Chrome 64.0.3282.119)
                        @SimpleZero

                        163的普通邮箱也是可以的吗,还是需要企业邮箱

                        1. SimpleZero
                            Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
                          @heroyf

                          普通邮箱即可 SMTP地址:smtp.163.com 端口:465 ssl加密勾上

                          1. heroyf
                              Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.119(Google Chrome 64.0.3282.119)
                            @SimpleZero

                            好滴!用户名就是自己的163邮箱名是吧~

                            1. SimpleZero
                                Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
                              @heroyf

                              邮箱账号 @163.com这个

                              1. heroyf
                                  Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.119(Google Chrome 64.0.3282.119)
                                @SimpleZero

                                好的,谢谢博主了,感动的痛哭流涕

                                1. SimpleZero
                                    Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
                                  @heroyf

                                  多来逛逛就好了23333

                                  1. heroyf
                                      Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.119(Google Chrome 64.0.3282.119)
                                    @SimpleZero

                                    我把博主的博客设置为友链啦~
                                    我们可以互换友链
                                    网站:www.heroyf.club

                                    1. SimpleZero
                                        Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
                                      @heroyf

                                      添加完成

                                      1. heroyf
                                          Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.119(Google Chrome 64.0.3282.119)
                                        @SimpleZero

                                        换成163就成功了吐血

                                        1. SimpleZero
                                            Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
                                          @heroyf

                                          猜到了,哈哈哈,所以让你换163试试

                                          1. heroyf
                                              Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.119(Google Chrome 64.0.3282.119)
                                            @SimpleZero

                                            哈哈哈评论无法触发

                                            1. SimpleZero
                                                Windows 10 x64 Edition(Windows 10 x64 Edition) / Google Chrome 64.0.3282.167(Google Chrome 64.0.3282.167)
                                              @heroyf

                                              那就添加计划任务

  2. 爸爸
      Android 7.1.2(Android 7.1.2) / Google Chrome 57.0.2987.108(Google Chrome 57.0.2987.108)

    看了也不懂

    1. Zero
        Android 7.0(Android 7.0) / Google Chrome 57.0.2987.108(Google Chrome 57.0.2987.108)
      @爸爸

      看了也不懂就别说话

      1. 爸爸
          Android 7.1.2(Android 7.1.2) / Google Chrome 57.0.2987.108(Google Chrome 57.0.2987.108)
        @Zero

        那么凶干啥