我正在从事一个电子邮件密集型项目,我很欣赏电子邮件在 DDEV 上的 mailhog 中出现,但我想在 gmail、Outlook 等中看到它们。我怎样才能让它们到达我想查看它们的位置? (我ddev launch -m
用来在 ddev 中启动 mailhog 浏览器;文档位于https://ddev.readthedocs.io/en/latest/users/developer-tools/#email-capture-and-review
问问题
725 次
1 回答
3
这并不难做到,只是 Mailhog 的调试/错误输出没有被 ddev 捕获或呈现,因此需要一些努力才能使其正常工作。
- 您需要一个可以接受常规 SMTP 流量的 smtp 服务器。如今,它将需要用户名和密码。我使用了 mailgun ( https://www.mailgun.com/ ),它是免费的,但需要信用卡。我假设你已经设置好了。
- 您需要能够在 Mailhog 尝试“释放”电子邮件时看到它的输出。我们将使用 ddev 自定义命令来解决这个问题。
一步步:
- 安装此自定义命令以查看 mailhog 的输出。将其放入 .ddev/commands/web/mailhog-debug 并确保它是可执行的(chmod +x .ddev/commands/web/mailhog-debug)。
#!/bin/bash
## Description: capture debug from mailhog
## Usage: mailhog-debug
## Example: "ddev mailhog-debug"
set -eu -o pipefail
echo "mailhog on project d8composer"
sudo rm -f /etc/supervisor/conf.d/mailhog.conf # Remove mailhog from supervisor conf
kill -1 1 # Tell supervisord to reload
killall mailhog || true
mailhog
- 发送一个消息。这可以是项目的联系页面或您的应用程序正在执行的任何操作。
- 在 Mailhog 中查看消息(用于
ddev launch -m
启动 Mailhog 界面)。 - 使用“发布”按钮将消息发布到野外:
- 启用 mailhog 调试,
ddev mailhog-debug
它会一直运行到你 - 在“发布”表单上,您需要为其提供您将要使用的凭据。您可以单击“保存这些设置”复选框...但是下次您在这里时必须取消选中它,否则 Mailhog 会丢弃您的消息,说它已经创建了该服务器。
- 单击“发布消息”并在终端窗口中观看调试过程。如果你像我一样,在你做对之前你会遇到一些身份验证失败。
- 喜欢在目标电子邮件地址查看电子邮件。
于 2020-07-08T22:17:20.870 回答