4.1 KiB
4.1 KiB
📧 邮箱服务配置完成总结
✅ 配置完成
已成功配置 163 邮箱服务,用于发送协作邀请邮件。
📋 配置详情
邮箱信息
- 邮箱地址: cftservice@163.com
- SMTP 服务器: smtp.163.com
- 端口: 465 (SSL/TLS)
- 授权密码: SChncqpqS9TDPUD2
已更新的文件
-
.env- 实际环境变量配置SMTP_HOST="smtp.163.com" SMTP_PORT=465 SMTP_USER="cftservice@163.com" SMTP_PASS="SChncqpqS9TDPUD2" SMTP_FROM="中华家谱 <cftservice@163.com>" -
.env.example- 环境变量示例文件- 添加了完整的 SMTP 配置说明
- 供其他开发者参考
-
README.md- 项目文档- 更新了环境变量配置章节
- 添加了邮箱配置说明
-
docs/EMAIL_CONFIGURATION.md- 详细配置文档- 完整的配置步骤
- 故障排查指南
- 安全建议
- 生产环境配置方案
-
scripts/test-email.js- 邮件测试脚本- 用于测试 SMTP 配置
- 验证邮件发送功能
🧪 测试邮件发送
方法 1:使用测试脚本
# 发送测试邮件到指定邮箱
node scripts/test-email.js your-email@example.com
方法 2:通过应用界面
- 启动应用:
pnpm dev - 登录系统
- 进入家族树设置
- 添加协作者并发送邀请
📊 邮件功能说明
当前支持的功能
- 协作邀请邮件
- 邀请新用户加入家族树
- 自动生成初始密码(新用户)
- 提供登录链接
- 显示角色信息(编辑者/查看者)
邮件模板位置
- 文件:
/lib/mail.ts - 函数:
sendInvitationEmail()
🔒 安全提示
⚠️ 重要安全建议
-
保护授权密码
- ✅
.env文件已在.gitignore中 - ❌ 不要将授权密码提交到代码仓库
- ❌ 不要在公开场合分享授权密码
- ✅
-
定期更换密码
- 建议每 3-6 个月更换一次
- 如发现异常,立即更换
-
监控发送记录
- 定期检查邮箱发送记录
- 注意异常发送行为
📈 使用限制
163 邮箱限制
- 免费邮箱: 约 50 封/天
- VIP 邮箱: 约 500 封/天
建议
如果需要发送大量邮件,建议:
- 升级到 VIP 邮箱
- 或使用企业邮箱
- 或使用专业邮件服务(SendGrid、阿里云邮件推送等)
🔍 故障排查
常见问题
-
邮件发送失败
- 检查环境变量配置
- 确认 SMTP 服务已开启
- 验证授权密码是否正确
-
邮件进入垃圾箱
- 正常现象,首次发送可能被标记
- 建议收件人将发件人加入白名单
-
发送频率限制
- 注意每日发送限制
- 避免短时间内大量发送
📝 下一步操作
立即测试
# 1. 确保环境变量已配置
cat .env | grep SMTP
# 2. 运行测试脚本
node scripts/test-email.js your-email@example.com
# 3. 检查收件箱
# 如果没收到,检查垃圾邮件文件夹
生产环境部署
在部署到生产环境时:
-
配置环境变量
# 在服务器上设置环境变量 export SMTP_HOST="smtp.163.com" export SMTP_PORT="465" export SMTP_USER="cftservice@163.com" export SMTP_PASS="SChncqpqS9TDPUD2" export SMTP_FROM="中华家谱 <cftservice@163.com>" -
验证配置
node scripts/test-email.js test@example.com -
监控日志
# 查看应用日志 tail -f logs/app.log | grep "邮件"
📚 相关文档
✨ 配置完成清单
- 更新
.env文件 - 更新
.env.example文件 - 更新
README.md文档 - 创建详细配置文档
- 创建测试脚本
- 验证配置正确性
🎉 总结
163 邮箱服务已成功配置!现在可以:
- ✅ 发送协作邀请邮件
- ✅ 自动生成新用户密码
- ✅ 提供登录链接
如有任何问题,请参考 docs/EMAIL_CONFIGURATION.md 文档。