Repolode
sj26

sj26/mailcatcher

一个本地 SMTP 服务器,在开发时截获外发邮件并在网页中查看。

可替代:Mailtrap

Star
6,783
Fork
604
未关闭 Issue
43
最近提交
上个月

这是什么?

MailCatcher 是一个简单的 SMTP 服务器,会截获发送给它的所有邮件,并在网页界面中展示。把应用的邮件发送地址指向 smtp://127.0.0.1:1025,而不是真实的邮件服务器,然后打开 http://127.0.0.1:1080 即可查看已收到的邮件,适合在开发阶段测试外发邮件而不真正投递给收件人。

邮件可以以 HTML、纯文本或源码形式查看。HTML 内容会被重写,以便显示内嵌图片,链接则在新窗口中打开。附件可以单独列出和下载,原始邮件也能导出,用本地邮件客户端打开。项目还提供 JSON 和 HTTP 接口,用于获取邮件列表和各部分内容。

MailCatcher 以 Ruby gem 形式安装,需要 Ruby 3.3 或更高版本。可通过命令行参数修改 IP 和端口,也提供官方 Docker 镜像。文档中包含 Rails、Django 和 PHP 的接入方式,PHP 可通过兼容 sendmail 的 `catchmail` 命令发送。

核心功能

  • 01截获所有外发邮件,并存储以便在浏览器中查看。
  • 02支持以 HTML、纯文本或源码形式显示邮件。
  • 03列出附件,并可单独下载每个部分。
  • 04可导出原始邮件,用本地邮件客户端打开。
  • 05浏览器支持时通过 WebSocket 即时刷新新邮件,否则定时轮询。
  • 06提供 JSON 和 HTTP 接口,用于获取邮件及其各部分内容。

适用场景

  • 在本地开发时测试密码重置、注册和通知类邮件。
  • 在不发送真实邮件的情况下,检查 Rails、Django 或 PHP 应用的邮件输出。
  • 在 Docker 中运行一次性邮件截获服务,用于 CI 或演示环境。

快速上手

  1. 1

    使用 RubyGems 安装 MailCatcher

    gem install mailcatcher
  2. 2

    启动 MailCatcher

    mailcatcher
  3. 3

    打开 http://127.0.0.1:1080/ 网页界面,并通过 smtp://127.0.0.1:1025 发送邮件

使用前须知

  • 需要 Ruby 3.3 或更新版本,部分 gem 依赖可能需要构建工具。

收录于专题

标签

常见问题

mailcatcher 是什么?
一个本地 SMTP 服务器,在开发时截获外发邮件并在网页中查看。 MailCatcher 是一个简单的 SMTP 服务器,会截获发送给它的所有邮件,并在网页界面中展示。把应用的邮件发送地址指向 smtp://127.0.0.1:1025,而不是真实的邮件服务器,然后打开 http://127.0.0.1:1080 即可查看已收到的邮件,适合在开发阶段测试外发邮件而不真正投递给收件人。
mailcatcher 可以免费使用吗?用的什么许可证?
mailcatcher 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
mailcatcher 还在维护吗?
半年内有更新。mailcatcher 最近一次提交是在 2026年9月16日。
mailcatcher 适合用来做什么?
在本地开发时测试密码重置、注册和通知类邮件。 在不发送真实邮件的情况下,检查 Rails、Django 或 PHP 应用的邮件输出。 在 Docker 中运行一次性邮件截获服务,用于 CI 或演示环境。
mailcatcher 怎么安装和运行?
使用 RubyGems 安装 MailCatcher: gem install mailcatcher 启动 MailCatcher: mailcatcher 打开 http://127.0.0.1:1080/ 网页界面,并通过 smtp://127.0.0.1:1025 发送邮件
在哪里获取 mailcatcher?
源代码和安装说明在 GitHub 上:https://github.com/sj26/mailcatcher

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目