【问题】如何设置QQ邮箱支持的smtp(以支持程序发送邮件),及n8n的smtp凭证设置示例
本文介绍了通过QQ邮箱SMTP服务发送邮件的详细步骤。及n8n的smtp凭证设置示例。
·
第一步:开启QQ邮箱的SMTP服务
- 登录你的QQ邮箱(https://mail.qq.com/)
- 点击右上角的"设置"(有的没有齿轮图标)
- 选择"账户"选项卡
- 向下滚动到"POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务"部分
- 找到"IMAP/SMTP服务",点击"开启"
- 按照提示(可能需要手机QQ扫码或短信验证)完成验证
- 系统会给你一个授权码(不是QQ密码!),请妥善保存这个16位密码
- 已经设置过的,通过“管理服务”,来管理授权码:

进入:

第二步:获取必要的SMTP信息
QQ邮箱的SMTP服务器信息如下:
- SMTP服务器地址:smtp.qq.com
- 端口号:465(SSL加密)或587(TLS加密)
- 用户名:你的完整QQ邮箱地址(如123456@qq.com)
- 密码:不是QQ密码,而是第一步获得的授权码
第三步:选择编程语言示例代码
Python示例
import smtplib
from email.mime.text import MIMEText
# 配置信息
mail_host = "smtp.qq.com" # SMTP服务器
mail_port = 465 # 端口号
mail_user = "123456@qq.com" # 你的QQ邮箱
mail_pass = "你的授权码" # 第一步获取的授权码
# 创建邮件内容
message = MIMEText("这是邮件正文内容", "plain", "utf-8")
message["Subject"] = "邮件主题"
message["From"] = mail_user
message["To"] = "收件人邮箱@example.com"
# 发送邮件
try:
smtpObj = smtplib.SMTP_SSL(mail_host, mail_port)
smtpObj.login(mail_user, mail_pass)
smtpObj.sendmail(mail_user, ["收件人邮箱@example.com"], message.as_string())
print("邮件发送成功")
except smtplib.SMTPException as e:
print("邮件发送失败:", e)
PHP示例
<?php
// 配置信息
$mail_host = "smtp.qq.com"; // SMTP服务器
$mail_port = 465; // 端口号
$mail_username = "123456@qq.com";// 你的QQ邮箱
$mail_password = "你的授权码"; // 第一步获取的授权码
$mail_from = "123456@qq.com"; // 发件人邮箱
$mail_to = "收件人邮箱@example.com"; // 收件人邮箱
$mail_subject = "邮件主题"; // 邮件主题
$mail_body = "这是邮件正文内容"; // 邮件正文
// 使用PHPMailer发送(需要先安装PHPMailer库)
require 'vendor/autoload.php';
$mail = new PHPMailer\PHPMailer\PHPMailer();
$mail->isSMTP();
$mail->Host = $mail_host;
$mail->Port = $mail_port;
$mail->SMTPSecure = 'ssl';
$mail->SMTPAuth = true;
$mail->Username = $mail_username;
$mail->Password = $mail_password;
$mail->setFrom($mail_from);
$mail->addAddress($mail_to);
$mail->Subject = $mail_subject;
$mail->Body = $mail_body;
if (!$mail->send()) {
echo "邮件发送失败: " . $mail->ErrorInfo;
} else {
echo "邮件发送成功";
}
?>
常见问题解答
-
为什么需要授权码而不是QQ密码?
- 这是QQ邮箱的安全策略,使用授权码可以保护你的QQ主账号安全
-
端口465和587有什么区别?
- 465是SSL加密端口,587是TLS加密端口,功能上都能用
-
邮件发送失败怎么办?
- 检查授权码是否正确
- 检查SMTP服务是否已开启
- 检查防火墙是否阻止了出站465/587端口
- 查看程序返回的错误信息
-
可以发送附件吗?
- 可以,需要修改代码支持附件功能
-
每天能发多少邮件?
- QQ邮箱对免费用户有限制,通常每天几十封
注意事项
- 不要把授权码分享给他人
- 不要在代码中直接写授权码,建议使用环境变量或配置文件
- 如果要发送大量邮件,考虑使用专业邮件服务
按照这个教程,你应该能够成功配置并使用QQ邮箱从程序中发送邮件了
n8n的smtp之QQ邮箱凭证配置示例
使用smtp,需要授权凭证,这里新建一个,或者用之前配置好的,配置项如下:

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。
更多推荐
所有评论(0)