CommentToMail typecho版
Typecho 上利用最广泛的插件是 CommentToMail,最早由 DEFE 开拓,后来由 Byends Upd 接手。该插件通过常用的 PHP Mail,SendMail 或者 SMTP 来发送邮件
同时lan tian 制作了基于 Mailgun 云邮API 的 Typecho评论插件分支

下载地址
百度云(无法插入网盘地址,关注"大众号 黑客组 下载)
为什么不用github?由于我不是作者,我会关照作者更新到他的github
更新了什么?
博主我的插件用着明明没问题,你更新了啥?
详情可以点击这里 邮件发送失落败:SMTP connect() failed. PHP>=5.6
当我们利用QQ邮箱(非企业邮箱)的时候会创造邮件发不出去,修复了此bug
更新了PHP Mailer版本
支持的版本范围
typecho 0.9 1.0 1.1 开拓版(2017-6-11)php5.4 5.5 5.6 7.0 7.1
为什么要用加密邮箱发送邮件关照?
正常SMTP协议利用的是25端口,但是由于垃圾邮件泛滥,25端口普遍被拦截,因此才利用465的加密SMTP端口
设置图
465端口
QQ邮箱须要利用授权码而非QQ登录密码
环境BUG
如果你利用这个插件依然不能发送邮件,那么恭喜你,我把坑都踩完了。。
两种情形
1.测试邮件不能发送
smtp端口465 用户名 授权码 ssl加密勾选
邮件是否进入垃圾桶(利用QQ邮箱好处便是不用进垃圾桶,例如100@qq.com这种)
上源码,插件利用fsockopen,pfsockopen,stream_socket_client三种办法发送邮件,检讨对应函数是否被禁止
if (function_exists('fsockopen')) {
2.测试邮件能发送,但是回答不能触发
同上,检讨函数是否被禁用
更大的可能性,这是环境配置问题
如果你是用的是宝塔面板
,那么宝塔面板的PHP7.0由于编译问题,函数是无效的。。
请换用PHP7.1或5.6即可
细节
我想知道博主你改了什么,我不放心你的插件,我自己改改可以吗
谈论过程
这次插件修恰是lan tian全权指挥,简称云修正???(没毛病)
在Action.php
的sendMail()
函数中,在
$mailer->SetFrom($this->_email->from, $this->_email->fromName);
这么一大段后插入:
$mailer->SMTPOptions = array('ssl' => array('verify_peer' => false,'verify_peer_name' => false,'allow_self_signed' => true)
CommentToMail 自带的 PHPMailer
太老了,以是加上参数没用。
CommentToMail 的 lib
文件夹里有三个php文件,把它们用 https://github.com/PHPMailer/PHPMailer 上的对应的三个php
在class.phpmailer.php
开头加上:
require_once 'class.smtp.php';require_once 'class.pop3.php';
CommentToMail 用了异步触发,便是访客回答时,插件会自己去访问自己的一个页面,然后被访问的那个页面发信。
异步触发中很多步骤都可能出问题,比如php无法访问到网站本身,或者实行到一半关闭连接时发送邮件的程序被关了。这些问题涉及到详细环境配置
完毕