美文网首页程序员
php利用swiftmailer发送邮件的坑

php利用swiftmailer发送邮件的坑

作者: nulldream | 来源:发表于2017-02-18 15:38 被阅读0次

只想说这个坑让我有点累

一、设置好账号密码,满心欢喜的开始测试,纳尼!500的错误是什么鬼!!!
好吧!原来是自己没有开启php错误显示,开启方法如下:
1、打开文件并搜索并修改下行,把Off值改成On

display_errors = Off
改成
display_errors = on

2、在搜索一下error_reporting,修改如下:

error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
改成
error_reporting = E_ALL | E_STRICT

3、最后重启apache服务

sudo /etc/init.d/apache2 restart

二、终于看到错误是什么了!然而看上去就是一脸懵逼

错误提示如下:

<br />
<b>Fatal error</b>:  Uncaught Swift_TransportException: Failed to authenticate on SMTP server with username "984920281@qq.com" using 1 possible authenticators in /home/nulldream/www/AppPassword/swiftmailer-master/lib/classes/Swift/Transport/Esmtp/AuthHandler.php:184
Stack trace:
#0 /home/nulldream/www/AppPassword/swiftmailer-master/lib/classes/Swift/Transport/EsmtpTransport.php(312): Swift_Transport_Esmtp_AuthHandler->afterEhlo(Object(Swift_SmtpTransport))
#1 /home/nulldream/www/AppPassword/swiftmailer-master/lib/classes/Swift/Transport/AbstractSmtpTransport.php(120): Swift_Transport_EsmtpTransport->_doHeloCommand()
#2 /home/nulldream/www/AppPassword/swiftmailer-master/lib/classes/Swift/Mailer.php(80): Swift_Transport_AbstractSmtpTransport->start()
#3 /home/nulldream/www/AppPassword/register.php(65): Swift_Mailer->send(Object(Swift_Message))
#4 {main}
  thrown in <b>/home/nulldream/www/AppPassword/swiftmailer-master/lib/classes/Swift/Transport/Esmtp/AuthHandler.php</b> on line <b>184</b><br />

没错就是这坑爹的qq邮箱,查了半天终于找到解决方法了,方法如下
1、一定要打你ssl链接扩展,php扩展打开方式如:

//打开你php.ini文件,本人的位于 /etc/php/7.0/apache2/php.ini
//搜索extension=php_openssl.dll
;extension=php_openssl.dll
//如果前面有分号记得去掉,就是启用该扩展

2、你的qq邮箱一定要打开smtp服务,然后拿到授权码,填入的密码是授权码,不是我们的密码

qq邮箱.jpeg

3、部分代码如下:

//配置邮件服务器,得到传输对象
$transport=Swift_SmtpTransport::newInstance('smtp.qq.com', 465, 'ssl');
//这是关键
基本上就这样了,后面可能会去把他封装到框架去

相关文章

  • php利用swiftmailer发送邮件的坑

    只想说这个坑让我有点累 一、设置好账号密码,满心欢喜的开始测试,纳尼!500的错误是什么鬼!!!好吧!原来是自己没...

  • Laravel 邮件发送

    一、QQ邮箱配置 laravel自带SMTP邮件配置和遇到的坑 laravel自带SwiftMailer库,集成了...

  • PHP利用socket发送邮件

    学习背景: 在实际工作中遇到了发邮件需求。现有代码是通过访问JSP页面调用一个java的邮件类来实现。据说一开始也...

  • iOS 共享到Mail邮件

    iOS 共享爬坑记 坑 神坑 特别坑 利用系统的Mail邮件发送,刚开始收不到,还以为是我的代码有问题,检查了几遍...

  • PHP发送邮件

    01 PHP发送邮件有内置函数mail,但是需要配置sendmail邮件服务器,这不是一个轻松的工作,需要你对邮件...

  • PHP发送邮件

    作为PHP入门开发者,常常有这种述求:自己的网站中需要添加一个使用自己的域名作为发件人邮件地址的自动发送邮件的方法...

  • PHP下利用PHPMailer配合QQ邮箱实现发邮件

    今天尝试了下利用php实现邮件的发送。在这里是利用PHPMailer和QQ邮箱实现的。 1 QQ邮箱配置 首先进入...

  • PHP中利用PHPMailer发送QQ邮件

    PHPMailer的介绍: 优点: 1 : 可运行在任何平台之上 2 : 支持SMTP验证 3 : 发送邮时指定多...

  • PHP 利用QQ邮箱发送邮件「PHPMailer」

    PHPMailer PHPMailer 是一个封装好的 PHP 邮件发送类,支持发送 HTML 内容的电子邮件,以...

  • tp5 使用邮箱发送功能 PHPMailer

    PHPMailer PHPMailer 是一个封装好的 PHP 邮件发送类,支持发送 HTML 内容的电子邮件,以...

网友评论

    本文标题:php利用swiftmailer发送邮件的坑

    本文链接:https://www.haomeiwen.com/subject/xworwttx.html