落伍老站长的情怀分类信息站点上线了,但是配置邮件发信的时候报错
经过一段时间的排错,发现以下问题
很可能是端口问题,最好把$mailer->SMTPSecure和$mailer->Port分别设置为ssl与465或者tls与587,否则某些浏览器不接受不安全的链接,导致$mailer->send()时非常慢,从而导致SMTP connect() failed(我最初就是没有设置$mailer->SMTPSecure和$mailer->Port,然后在某些主机上发不出邮件)
顺便介绍一个不规范的异步处理思路:
当主机上没有redis和队列组件时,可以把发送邮件单独些写成一个脚本,并由system()命令调用:
system("php sendMail.php '" . $parameters . "' >/dev/null &");
传入我们想要参入,如邮箱地址、标题、内容等
一定不要忘记最后的“&”,否则不在系统后台运行,php会等待邮件发送完成,那就不是异步了
这种方法可以作为异步的临时方案