zoukankan      html  css  js  c++  java
  • yii2.0邮件发送问题解决

    用yii2.0邮件类做一个定时发送邮件的功能,在本地测试没问题,放到线上就说连接163服务器超时各种问题,最后查查改改,已经解决了,现在就把遇到的问题记录下。

    <php 
    $config = [
        'id' => 'basic-console',
        'basePath' => dirname(__DIR__),
        'bootstrap' => ['log'],
        'controllerNamespace' => 'appcommands',
        'mailer' => [
                'class' => 'yiiswiftmailerMailer',
                'useFileTransport' =>false,
                'viewPath' => 'mail/daybasic',
                'transport' => [
                    'class' => 'Swift_SmtpTransport',
                    'host' => 'smtp.qq.com',  //每种邮箱的host配置不一样
                    'username' => '***********@qq.com',
                    'password' => '16位授权码', // 授权码
                    'port' => '465',
                    'encryption' => 'ssl',
                ],
           
    //       'transport' => [
    //        'class' => 'Swift_SmtpTransport',
    //        'host' => 'smtp.163.com', //每种邮箱的host配置不一样
    //        'username' => '***********@163.com',
    //        'password' => '*********', // 授权码
    //        'port' => '25', //994端口
    //        'encryption' => 'tls',//ssl
    //       ],
    'messageConfig'=>[ 'charset'=>'UTF-8', 'from'=>['**********@qq.com'=>'admin'] ], ], ] ?>

     顺带把发送邮件的代码也贴上。在sendemailController.php中

      //发邮件
    $content="22222222";
    //$app->params['email_users']=[111@qq.com,22222@qq.com];
            $messages = [];
            foreach (Yii::$app->params['email_users']  as $user) {
                $messages[] = Yii::$app->mailer->compose()
                    ->setTo($user)
                    ->setSubject("["标题标题")
                   //->setTextBody($content);
                   ->setHtmlBody($content);
            }
            Yii::$app->mailer->sendMultiple($messages);

     yii2.0后台的配置文件,因为写的是command下的文件,所有配置是console.php里。线上的文件一个在阿里云上,一个在百度云上,阿里云服务器上貌似25端口给禁止了,所以用连接不上163邮箱,修改端口25=>994,‘encryption’=>ssl。

    在百度云上的服务器不知道什么原因发送就是不成功,163邮箱改成QQ邮箱就可以了,走的端口不一样,估计也是端口问题。用qq邮箱需要注意的是修改邮箱配置如下:

    首先开启pop3/smtp服务,还有一点就是第三方登陆需要授权码。不过按照步骤获取就OK了。

  • 相关阅读:
    vMware 按装 MacOs
    jenkin
    Robotium
    robotframework
    Appium Server
    A new session could not be created. (Original error: Requested a new session but one was in progress) (WARNING: The server did not provide any stacktrace information)
    hdu2609 How many (最小表示法)
    UCF Local Programming Contest 2015 H. Reach for the Stars
    2020牛客寒假算法基础集训营3 J 牛牛的宝可梦Go
    二阶差分
  • 原文地址:https://www.cnblogs.com/angellating/p/7241366.html
Copyright © 2011-2022 走看看