gpt4 book ai didi

PHP:如何测试在 Linux 上向本地主机发送邮件并实际接收邮件?

转载 作者:太空宇宙 更新时间:2023-11-04 11:10:52 25 4
gpt4 key购买 nike

我正在用 php 构建一个守护程序,用于检查收到的电子邮件,然后将这些电子邮件存储在数据库中,引导他们完成整个过程。问题是我想为此构建一些单元测试,我不想为此设置整个邮件服务器。因此,对于测试,我想以某种方式将电子邮件发送到本地主机,然后由守护程序接收并进一步处理。所以我尝试了以下方法:

$headers = 'From: me@mydomain.com \r\n Reply-To: me@mydomain.com \r\n X-Mailer: PHP/' . phpversion();
mail('www-data@localhost', 'THE SUBJECT', 'THE BODY IS HERE', $headers);

然后当我从命令行运行 mail 时,我只收到一条消息说 kramer65 没有邮件

所以我的问题;有谁知道我如何在 php 中向本地主机发送电子邮件,以及如何再次从 php 中读取这些电子邮件?欢迎所有提示!

[编辑]所以我认为它正在向 www-data 帐户发送电子邮件,而不是我的个人 kramer65 帐户。我将 to 电子邮件地址更改为 kramer65@localhost,当我现在运行 mail 时,我得到了

kramer65@php0:~$ mail
Mail version 8.1.2 01/15/2001. Type ? for help.
"/var/mail/kramer65": 1 message 1 new
>N 1 kramer65e@php0 Fri Apr 25 10:48 16/495 THE SUBJECT
&

我接下来的问题是;我如何阅读或以某种方式从 php 中获取此电子邮件?

最佳答案

这取决于您如何配置 php 内部邮件设置。如果您将其配置为使用本地邮件转发代理(sendmail 或类似的),那么您应该能够通过以下方式将消息发送到本地帐户(不是本地电子邮件地址)只需指定帐户名称。至少这是此类代理所提供的。除非 php 明确阻止这种用法,否则值得一试。

您不能发送到本地电子邮件地址,因为这需要电子邮件服务器,特别是 smtp 服务器(exim 等)。没有它,就没有可以接受传入消息的组件。

关于PHP:如何测试在 Linux 上向本地主机发送邮件并实际接收邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23288069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com