我在Mac上安装了postfix并更改了以下参数:
mydestination =
relayhost = 127.0.0.1:1025
我已将 mydestination 修改为空白,以便无论邮件发送到终端的人是谁,都必须通过中继主机(即使它被发送到@ localhost)我可以看到它出现在我的网络浏览器的Mailcatcher标签中:
echo "Body test" | mail -s "Subject test" test@dev.local
但事情就是这样,当我收到邮件时,我会立即收到内置的websockets,但如果我重新加载页面localhost:1080,电子邮件仍然存在,这意味着它们必须存储在某个地方
搜索后,我发现以下网址重定向到.json,其中包含在Mailcatcher标签中打印出来的已收到的邮件:
localhost:1080/messages
但如果我在我的webroot目录中执行ls -l
,则不会显示messages.json。当你点击" Quit" Mailcatcher中的按钮,然后按mailcatcher
重新启动它,再次打开localhost:1080
邮件已经消失......
我不明白,当你点击" Quit"而且我可能还没有见过?
感谢您的帮助!
答案 0 :(得分:2)
如果您在GitHub上查看来源,您会在 mail.rb 中找到类似SQLite3::Database.new(":memory:", :type_translation => true).tap do |db|
的内容。
您可能没有注意到,但MailCatcher使用SQLite,上面告诉您它已配置为在内存中运行。因此,当关闭MailCatcher时,此数据库中包含的所有行都将丢失。