日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

laravel8 邮件发送 以qq邮箱来举例

發布時間:2023/12/8 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 laravel8 邮件发送 以qq邮箱来举例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、開啟POP3和SMTP服務

qq郵箱 設置 賬戶下?

2. 按照要求發送短信后會獲取一個秘鑰 (要保存好,避免麻煩的重復獲取)?

二、使用步驟



1.對?Laravel?框架中郵件發送的配置文件進行修改:

?.env 文件:

MAIL_MAILER=smtp MAIL_HOST=smtp.qq.com MAIL_PORT=465 MAIL_USERNAME=你的郵箱 MAIL_PASSWORD=前面獲取的秘鑰 MAIL_ENCRYPTION=ssl MAIL_FROM_ADDRESS=你的郵箱 MAIL_FROM_NAME=郵件標題

?config/mail.php 文件:

return [
‘driver’ => env(‘MAIL_DRIVER’, ‘smtp’),
‘host’ => env(‘MAIL_HOST’, ‘smtp.mailgun.org’),
‘port’ => env(‘MAIL_PORT’, 587),
‘from’ => [
‘address’ => env(“MAIL_USERNAME”, “”),
‘name’ => env(“MAIL_FROM_NAME”)
],
‘encryption’ => env(‘MAIL_ENCRYPTION’),
‘username’ => env(‘MAIL_USERNAME’),
‘password’ => env(‘MAIL_PASSWORD’),
‘sendmail’ => ‘/usr/sbin/sendmail -bs’,
‘pretend’ => env(‘MAIL_PRETEND’, false),
];

2、生產控制器、配置路由

php artisan make:controller MailController

Route::get(‘mail/send’,‘MailController@sendMail’);

?3.編輯控制器、加入以下代碼:

// 記得使用內置的郵件類 use Illuminate\Support\Facades\Mail; public function sendMail() {$name = '這是郵件發送的標題'; // Mail::send()的返回值為空,所以可以其他方法進行判斷 // Mail::send();需要傳三個參數;// 第一個為引用的模板// 第二個為給模板傳遞的變量(郵箱發送的文本內容)// 第三個為一個閉包,參數綁定Mail類的一個實例。Mail::send('emails',['name'=>$name],function($message){ $to = 'itlaowen@qq.com'; $message ->to($to)->subject('郵件測試'); }); // 返回的一個錯誤數組,利用此可以判斷是否發送成功dd(Mail::failures()); }

4、由于上面👆指定了郵件發送的視圖層、所以去創建一個view

這是測試郵件!! {{$name}}

5、測試

訪問:http://localhost/mail/send 如果返回一個空數組則表示郵件發送成功。

6、報錯:stream_socket_client() 、certificate verify failed
具體報錯如下:

stream_socket_client(): SSL operation failed with code 1. OpenSSL
Error messages: error:14090086:SSL
routines:ssl3_get_server_certificate:certificate verify failed

原因:
php openssl 沒有加載 ca 證書 , 去下載個 ca 證書然后添加進去即可

解決:

查看phpinfo()、檢查openssl.cafile的文件是否存在
不存在的話進行如下操作
1、找到自己的 php 的安裝目錄
2、進入目錄:cd php/etc/
3、下載 ca 證書:wget http://curl.haxx.se/ca/cacert.pem
4、查看目錄:pwd
5、編輯 php.ini:vim php.ini
6、修改 openssl.cafile 的路徑 openssl.cafile=/usr/local/php/etc/cacert.pem

解決laravel 8 發送郵件提示: cannot sendmessage without a sender address

總結

以上是生活随笔為你收集整理的laravel8 邮件发送 以qq邮箱来举例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。