2

我正在尝试确认 mailcatcher,如下所述: [在 cloud9 ide 中使用 mailcatcher

这要求我做

mailcatcher --http-port $PORT --ip $IP and you can access it from 

这将允许我在https://project_name-username.c9.io/上访问 mailcatcher

但是,为了运行 mailcatcher 命令,我必须退出发送电子邮件确认的服务器。否则,我会收到有关端口已在使用中的以下错误。

mailcatcher --http-port $PORT --ip $IP
Starting MailCatcher
==> smtp://0.0.0.0:1025
~~> ERROR: Something's using port 8080. Are you already running MailCatcher?

如果我退出服务器并运行 mailcatcher,它可以访问 mailcatcher 页面但表单将为空白.. 没有电子邮件可确认。

似乎没有办法为我的应用程序在 Cloud9 上运行选择不同的端口,尽管在我的最后一个问题中,我被暗示端口 8081 和 8082 可用(我仍然没有找到一种工作方式出去)。此外,还没有找到在 8081 或 8082 上运行 mailcatcher 的方法。

如果有人知道如何解决这个问题,请告诉我!

4

2 回答 2

5

MailCatcher 运行两种不同的服务:SMTP 用于从您的应用程序中捕获电子邮件,以及用于查看捕获的电子邮件的 HTTP Web 界面。

默认情况下,它绑定到本地主机 IP 地址 127.0.0.1,因此您只能在运行 MailCatcher 的同一台机器上使用它。每个 IP 地址和端口都可以独立配置。这--ip是一次更改两种服务的地址的快捷方式。这可能意味着您无法再将电子邮件发送到 localhost SMTP 地址。所以前面的答案几乎是对的,但应该只改变HTTP地址:

  • 127.0.0.1:1025按照正常的 MailCatcher 说明配置您的应用程序以使用 SMTP 发送电子邮件。
  • 8080使用端口在端口上启动您的应用程序服务器$PORT
  • $IP使用另一个端口启动 MailCatcher 暴露 HTTP 服务:

    mailcatcher --http-ip $IP --http-port 8081

  • 使用您的工作区 URL 但使用指定的端口打开 MailCatcher:

    http://<workspace-name>-<username>.c9.io:8081

于 2017-07-27T04:40:38.287 回答
3

我们刚刚推出对多个端口的支持,因此您现在应该可以使用 8080、8081 和 8082。以下是访问它们的方法:

  • 使用 $PORT 在端口 8080 上启动应用程序服务器
  • 使用以下命令启动 mailcatcher:

    mailcatcher --http-port 8081 --ip $IP

  • 在您发出的电子邮件中,您应该设置https://<workspace-name>-<username>.c9.io:8081用于 mailcatcher 服务的 url(注意:8081

希望这可以帮助。

于 2015-07-22T09:16:00.127 回答