Lumen/Laravel 5.4 使用網易郵箱 SMTP 傳送郵件
Lumen / Laravel 5.4 使用網易郵箱 SMTP 傳送郵件
獲取網易郵箱的伺服器和授權碼:
- 獲取伺服器地址:
點選【設定】 > 【POP3/SMTP/IMAP】:
- 獲取伺服器地址:
伺服器地址:
POP3伺服器: pop.163.com
SMTP伺服器: smtp.163.com
IMAP伺服器: imap.163.com
- 獲取客戶端授權密碼
授權碼
授權碼是用於登入第三方郵件客戶端的專用密碼。
適用於登入以下服務: POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服務。
點選【設定】 > 【客戶端授權密碼】
點選【開啟】, 設定一個授權碼, 比如本例中將授權碼設定為: mailPASSWORD
配置 env 檔案:
在配置檔案 .env
檔案,新增以下配置:
MAIL_DRIVER=smtp
MAIL_HOST=smtp.163.com
MAIL_PORT=25
MAIL_USERNAME=[email protected]163.com
MAIL_PASSWORD=mailPASSWORD
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS=[email protected]163.com
MAIL_FROM_NAME=cnwytnet
Lumen 專案
由於 Lumen 是簡化版的 Laravel, 需要增加以下發郵件的模組。
- 需要新增
illuminate/mail
模組:
修改composer.json
檔案中 require 部分配置如下:
"require": {
"php": ">=5.6.9",
"laravel/lumen-framework": "5.4.*",
"vlucas/phpdotenv": "~2.2",
"guzzlehttp/guzzle": "^6.2",
"predis/predis": "^1.1",
"illuminate/redis": "^5.4",
"illuminate/mail" :"5.4.*"
}
執行 composer up
.
- 需要增加mail.php配置檔案:
確保Luemn專案中存在 app/config/mail.php
配置檔案。
若不存在可以從 Laravel 程式碼中複製一份。
建立發郵件指令碼
- 建立指令碼檔案
app/Console/Command/SendMailCommand.php
<?php
namespace App\Console\Commands;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\Mail;
class SendMailCommand extends Command
{
/**
* The name and signature of the console command.
*
* @var string
*/
protected $signature = 'demo:SendMail';
/**
* The console command description.
*
* @var string
*/
protected $description = '命令列-測試指令碼-SendMail';
/**
* constructor
*/
public function __construct()
{
parent::__construct();
}
/**
* Execute the console command.
*
* @return mixed
*/
public function handle()
{
$content = '這是一封來自Laravel的測試郵件.';
$toMail = '[email protected]';
Mail::raw($content, function ($message) use ($toMail) {
$message->subject('[ 測試 ] 測試郵件SendMail - ' .date('Y-m-d H:i:s'));
$message->to($toMail);
});
}
}
- 將指令碼檔案加入到 app/Console/Kernel.php 中:
protected $commands = [
Commands\SendMailCommand::class, //測試發郵件指令碼
];
執行發郵件操作
- 檢視指令碼, 可以看到我們新加的指令碼命令
demo:SendMail
:
$ php artisan
demo
demo:SendMail 命令列-測試指令碼-SendMail
- 執行傳送郵件指令碼:
$ php artisan demo:SendMail
不出意外的話,郵件傳送成功。檢視發件人的發件箱,或者檢視收件人的收件箱,確認一下吧。
其他
- 郵件地址
MAIL_FROM_ADDRESS
必須和MAIL_USERNAME
一致,否則報錯:
[Swift_TransportException]
Expected response code 250 but got code "553", with message "553 Mail from must equal authorized user"
- 不填授權碼
MAIL_PASSWORD
或者MAIL_PASSWORD
錯誤,報錯:
[Swift_TransportException]
Failed to authenticate on SMTP server with username "[email protected]" using 2 possible authenticators
可以將郵件驅動改成 MAIL_DRIVER=log
, 就可以在本地日誌中看到郵件內容了,這在測試的時候會很有用。
比如,在配置.env
中,修改郵件驅動為MAIL_DRIVER=log
,將會把郵件傳送內容儲存到 storage/logs/laravel.log
中。
內容如下:
[2017-04-01 06:12:19] local.DEBUG: Message-ID: <727877e080177[email protected].generated>
Date: Sat, 01 Apr 2017 06:12:19 +0000
Subject: [ =?utf-8?Q?=E6=B5=8B=E8=AF=95?= ] SendMail - 2017-04-01 06:12:19
From: SendMailTEST <cnwytnet@163.com>
To: [email protected].com
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
這是一封來自Laravel的測試郵件.
END.
參考連結:
相關推薦
Lumen/Laravel 5.4 使用網易郵箱 SMTP 傳送郵件
Lumen / Laravel 5.4 使用網易郵箱 SMTP 傳送郵件 獲取網易郵箱的伺服器和授權碼: 獲取伺服器地址: 點選【設定】 > 【POP3/SMTP/IMAP】: 伺服器地址: POP3伺服器: pop.1
python學習(5)--網易郵箱發郵件異常解決辦法
python發郵件 解決辦法如下 nbsp -- bsp err error 發郵件 png 在用python發郵件時,發現用網易郵箱作為發件人。會出現以下異常: smtplib.SMTPDataError: (554, b‘DT:SPM 163 smtp12,EMCo
phpmailer實現簡單的郵件傳送(以網易郵箱smtp伺服器為例)
1、描述 第一次做到用php做到傳送郵件的功能。 Google了一下,php內建函式裡面有一個mail()函式。但是使用mail的話,會涉及到很多問題,我也沒有仔細研究過,反正都是和smtp協議息息相關。 於是,就去GitHub上開源的檔案傳送封裝好的專案
織夢網站使用網易郵箱發送郵件
body .com 郵件 png 技術分享 clas 參數 使用 基本 1. 進入網易郵箱,根據提示開通SMTP,期間要設置一次密碼 2. 進入織夢網站後臺。系統 - 系統基本參數 - 核心設置 網站發信EMAIL:填寫網易郵箱 是否啟用smtp方式發送郵件:
網易郵箱如何群發郵件
網頁郵箱是目前國內使用人數比較多的郵箱之一,今天一米軟體就來告訴大家網易郵箱如何群發郵件。 領先郵、領航郵支援一次性發送100個收件人;尊享郵支援一次傳送200個收件人;尊藏郵、尊耀郵支援一次性發送400個收件人。 您郵件群發地址可以分佈在收件人、抄送和密
CentOS 7.5配置mailx使用外部smtp傳送郵件
1.連線現成的smtp伺服器去傳送(此方法比較簡單,直接利用現有的smtp伺服器比如qq、新浪、網易等郵箱,只需要直接配置mail.rc檔案即可實現) 2.自己搭建私有的smtp伺服器(需要用到postfix、bind等服務) 本文章只介紹第一種方式去實現 具體配置步驟如下: 1、安裝mailx y
關於C#如何利用QQ郵箱SMTP傳送郵件
今天寫傳送郵件的時候,用163可以正常傳送,但是利用QQ傳送不了郵件,後來發現是QQ郵箱的SMTP使用了SSL加密,所有必須啟用SSL加密,並且指定埠就可以傳送了。 public vo
thinkphp5 使用163郵箱smtp傳送郵件教程
兩種方法: 使用composer安裝phpmailer composer require phpmailer/phpmailer composer安裝太慢,我使用了直接下載的方法,下載後直接放置在extend解壓 然後在common了寫一個函式 <?php
[IT資訊]網易郵箱從3.5版本更新到極速4.0版本
今天,在登入網易郵箱時發現網易已經從原來的極速3.5版本更新到極速4.0版本,而且微調了郵箱內部使用風格,預設多頁面,顯示資料夾中未讀郵件等,顯得很直觀,很方便。而且預設登入的模式已經是4.0版本了。極速4.0 (2011-06-22)網易郵箱極速4.0啟用全新第四代Ajax引擎,全面支援 HTML5標準,對
使用JavaMail進行簡單SMTP郵件傳送測試,從網易郵箱傳送到QQ郵箱
===========TLS版本=========== 本文使用的JavaMail版本為1.5.2 import java.util.Properties; import javax.mail.Authenticator; import javax.mail.Messa
Python使用SMTP傳送郵件(163,yeah等網易郵箱已測試可以)
#! /usr/bin/env python # -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText
Laravel 5.4 使用 Mail 傳送郵件獲取驗證碼功能(使用的配置郵箱為126郵箱)
1 <?php 2 3 namespace App\Modules\Liveapi\Http\Controllers\Personnel; 4 5 use App\Modules\Liveapi\Http\Controllers\Controller; 6 use Illuminate
Laravel 5.4建站06--API 認證系統 Passport
檢查 resp alt pre tails provide 函數 onf gis 介紹 在 Laravel 中,實現基於傳統表單的登陸和授權已經非常簡單,但是如何滿足 API 場景下的授權需求呢?在 API 場景裏通常通過令牌來實現用戶授權,而非維護請求之間的 Sessio
laravel 5.4 導出excel表格
配置文件 fig namespace com cad 修改 表格 新建 eat 1.在laravel根目錄下面找到一個composer.json文件 打開並在require下面加上一句話,如圖所示: 註:以後這個excel的版本號可能還會修改 2.執行 compo
laravel 5.4 刪除引入layer文件的寫法
laravel 5.4 刪除引入layer文件的寫法最新發現一個layer 的js文件引入laravel框架中<script type="text/javascript" src="{{asset(‘js/layer/layer.js‘)}}"></script><td>&
Laravel 5.4 migrate時報錯: Specified key was too long error
code php pdo oot uniq ble defaults return utf8編碼 Laravel 5.4默認使用utf8mb4字符編碼,而不是之前的utf8編碼。因此運行php artisan migrate 會出現如下錯誤: [Ill
Laravel 5.4+ Dingo +Jwt 快速搭建 API系統
composer dingo jwt laravel5.5 api 剛進入新公司,比較忙,只能抽時間來寫寫比較簡短的博文總結,還望見諒。 最近公司要從實業轉型線上,決定用laravel 來做快速開發,而一些同事之前沒有用過laravel,尤其是api 的快速搭建,一致想讓我
Laravel 5.4 快速開發簡書
PHP第1章 課程介紹介紹課程的大體脈絡和課程安排第2章 Laravel 5.4介紹本節課會帶領大家介紹laravel的各個版本歷史以及討論php框架的未來發展趨勢。把laravel周邊的生態環境一一展示。第3章 安裝啟動Laravel項目本章介紹laravel是如何安裝的,我們將使用composer工具對l
為什麽用網易郵箱
手機 網站 郵箱 收信 自己 網易 無法訪問 直接 為什麽 網易郵箱在收發郵件方面非常專業,能收到來自Google、FB、Twitter等正常情況下國內無法訪問的網站的郵件,相比如QQ、139等郵箱要麽收信非常慢,要麽就幹脆直接屏蔽掉來自這麽網站的郵箱,導致用戶根本就不
HTML自定義滾動條(仿網易郵箱滾動條)轉載
基本上 fma 內容 scrollbar color http code %20 water 它是使用CSS中的偽元素來實現的,主要由以下三個來完成: 1. -webkit-scrollbar:定義滾動條的樣式,如長寬。 2. -webkit-scrollbar-thumb