为 Twikoo 静态网站评论系统配置邮件通知功能(使用 Mailgun 的免费发信额度)

虽然 Twikoo 评论系统早已配置完成,但邮件通知功能一直未启用。今天在检查之前文章时,偶然发现用户一个月前的留言 🤦 虽然已回复,但恐怕为时已晚。为了避免类似情况再次发生,决定为评论系统添加邮件通知功能。

操作步骤详解

一、注册 Mailgun 账号并绑定域名

首先,访问 Mailgun 官方网站 注册账号。Mailgun 提供了每天 100 封邮件的免费发信额度,对于个人博客来说完全够用。

提示:免费额度需要绑定信用卡。如果没有信用卡,可以 👉 野卡 | 一分钟注册,轻松订阅海外线上服务 创建虚拟信用卡。虚拟信用卡不仅能快速注册,还能有效控制限额,避免不必要的损失。

注册完成后,绑定你的域名(例如 senjianlu.com),并按照 Mailgun 提供的 DNS 信息验证域名。具体操作如下:

  1. 添加自定义域名。
  2. 输入域名名称。
  3. 根据 Mailgun 提供的 DNS 信息,在域名解析服务中添加记录。
  4. 点击右上角的 Verify 按钮,等待验证通过。

二、获取 Mailgun 的 SMTP 信息

在 Mailgun 控制台中,进入 Send -> Sending -> Domains,找到已绑定的域名。确保域名状态为“绿色可用”,然后点击 SMTP credentials,查看默认创建的 postmaster 用户信息。

重置密码并保存,即可获取完整的 SMTP 信息。

以下是一个使用 Python 测试 SMTP 的示例代码:

python
import smtplib
from email.mime.text import MIMEText
from email.header import Header

邮件内容

msg = MIMEText(‘Hello, this is a test email.’, ‘plain’, ‘utf-8’)
msg[‘Subject’] = Header(‘这是一封内部测试邮件’, ‘utf-8’)
msg[‘From’] = ‘[email protected]
msg[‘To’] = ‘测试邮件接收者’

SMTP 信息

smtp_server = ‘smtp.mailgun.org’
smtp_port = 587
smtp_user = ‘[email protected]
smtp_password = ‘your_password’

收信方信息

to_addrs = [‘[email protected]’, ‘[email protected]’]

发信

try:
server = smtplib.SMTP(smtp_server, smtp_port)
server.starttls()
server.login(smtp_user, smtp_password)
server.sendmail(smtp_user, to_addrs, msg.as_string())
print(‘Send email successfully.’)
except Exception as e:
print(‘Failed to send email:’, e)
finally:
server.quit()

确保邮件发送成功后,即可进行下一步。

三、配置 Twikoo 评论系统的邮件通知功能

进入博客评论模块,点击右上角的设置图标,选择“配置管理”,然后配置邮件通知功能。具体步骤如下:

  1. 填写 SMTP 信息。
  2. 设置发件人邮箱。
  3. 保存配置。

完成后,可以发送测试邮件验证功能是否正常。

四、测试邮件通知功能是否正常

1、配置管理员邮箱

当其他用户发表评论时,管理员邮箱会收到通知。

2、测试用户发布评论

发表一条评论,确保管理员邮箱能成功收到通知。

3、测试回复评论

回复一条评论,确保用户邮箱能成功收到通知。

五、设置 Mailgun 的发信上限

在 Mailgun 控制台的 Manage Account 中,设置 Custom Message Limit。该值为单月发信上限,最低为 1000 封。根据需求调整即可。


👉 野卡 | 一分钟注册,轻松订阅海外线上服务

上一篇 2025年4月19日
下一篇 2025年4月20日

热门推荐