11

我对 mailtrap ( http://mailtrap.io/ )非常满意,直到我发现它变慢了。有时它不发送电子邮件或需要很长时间。

所以想到了替代方案并转移到了 mailcatcher ( http://mailcatcher.me/ )。问题是,它在开发环境中运行良好,但无法在暂存环境中运行。每当我去端口 1080 查看邮件时,路径都找不到。

顺便说一句,我正在为我的 rails 应用程序使用 mailcatcher。

谢谢;

[更新] 我的邮件设置:config.action_mailer.smtp_settings = { :host => http://mydomain.com , :port => 1025 }

顺便说一句,当我启动 mailcatcher 守护进程时。它注销

==> smtp://127.0.0.1:1025
==> http://127.0.0.1:1080

不是我的实际主机,是问题吗?

4

3 回答 3

20

默认情况下,mailcatcher 仅针对环回接口运行(因此地址为 127.0.0.1),因此只能从运行它的机器上访问它。

您可以在运行 mailcatcher 时使用--ip, --smtp-ip,--http-ip选项来控制它绑定到的 IP 地址。

于 2013-05-20T11:12:38.643 回答
2

通常我会说弗雷德里克的答案是正确的。

然而,出于某种原因,这对我们来说不起作用。Mailcatcher 拒绝监听 IP 地址。为了解决这个问题,我们只是代理了所有通过Nginx. 也可以用另一个代理来完成。无论如何,这是我们的配置:

server {
  listen 3020;


  location / {
    proxy_pass http://127.0.0.1:1080;
    proxy_redirect     off;
    proxy_set_header   Host             $host;
    proxy_set_header   X-Real-IP        $remote_addr;
    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
  }

}

然后,您可以像这样访问您的服务器:myserver.com:3020

似乎有点黑客,但希望这会有所帮助。

于 2014-06-11T17:13:18.153 回答
1

好吧,我回到了mailtrap,现在很好。我的应用程序出现了一些问题,因此没有发送邮件。现在一切都很好。

无论如何,谢谢你们试图帮助我。

快乐编程;)

于 2013-05-23T03:44:06.007 回答