使用mamp在本地测试电子邮件


Test emails locally with mamp

首先,我对这种本地主机服务器设置完全陌生,我花了几天时间试图弄清楚这一点,但没有运气。

我正在开发一个php网站与电子邮件表单。

我在MAC上使用codekitMAMP FREE,一切都很好。现在我的问题是,是否可以测试应该从本地表单发送的电子邮件?

我尝试了很多例子,如取消评论php.ini文件中的[mail function]位,安装第三方应用程序,如fakeSMTPMockSMTP,但绝对没有工作。mailto()代码应该工作,因为当我调试它时没有抛出错误

这可能吗?有谁知道怎么正确设置这个或者能给我一个防傻指南吗?

好吧,如果有人对这个感兴趣,我终于找到了一个让它工作的方法。

我将在这里一步一步的详细教程中解释它。

  • MAMP pro
  • 工作gmail帐户,因为您实际上需要登录到电子邮件帐户收件箱(我使用gmail使其工作,不确定其他人)

循序渐进教程

    首先,您需要安装mamp pro。在后缀选项卡中,将gmail.com添加为外发邮件的域,然后单击按钮"Use this data"
  • 完成后,您需要打开终端并输入sudo nano /System/Library/LaunchDaemons/org.postfix.master.plist(这将允许您编辑org.postfix.master.plist文件,否则不可编辑。

  • 你唯一要做的编辑是在<dict>之后的顶部添加<key>Disabled</key>

  • 现在关闭终端并重新启动mac。

  • 重启后,打开MAMP,进入要测试邮件的网站,提交邮件。

注意:对于to部分使用一个工作帐户是很重要的,否则您将无法测试mail()函数电子邮件!

    在前端什么都没有发生,但是如果你现在打开MAMP -> postFix选项卡,在底部你可以看到日志文件的路径和一个箭头,点击箭头,它将显示一条日志消息。
  • 向下滚动直到最后一行,在那里你应该找到一些说status:sent的东西。此状态发送意味着电子邮件已发送,并且本地测试按预期工作

接下来是什么?

  • Ok,现在登录到您的gmail帐户(您在mail()函数
  • 中用于to部分的帐户)
  • 转到垃圾邮件,你应该看到你刚刚从本地机器发送的电子邮件。

我正在使用它,它实际上工作得很好

快速提示

之后,我在我的gmail收件箱中做了一些调整,添加了别名和过滤器。我将解释这一点,因为它可能对初学者有用

  • 从您的pc登录到您的gmail帐户
  • 进入右上方的齿轮图标,然后进入设置
  • 在帐户和导入中,添加另一个帐户用作别名(在我的情况下是[myemailaddress]+test@gmail.com)
  • 完成后,转到过滤器选项卡
  • 添加一个新的过滤器,并设置它影响所有的电子邮件到[myemailaddress]+test@gmail.com
  • 点击继续进入下一画面
  • 现在,在这里你可以根据你的喜好来调整它,但重要的是要检查永远不要把它发送到垃圾邮件,这样你就总是能够看到你想测试的电子邮件。(我的个人设置是跳过收件箱(存档)并添加一个特定的标签)

就是这样!