首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Mailcatcher: PHP mail()函数返回false

Mailcatcher: PHP mail()函数返回false
EN

Stack Overflow用户
提问于 2014-07-15 00:52:10
回答 4查看 2.5K关注 0票数 6

我会试着描述一下我的问题:

为了在本地环境中调试传出的电子邮件,我安装了邮件捕获器(http://mailcatcher.me/),但在捕获从web发送的邮件时遇到了一些问题。如果我运行只包含一次mail()调用的脚本,一切正常,并且我可以在mailcatcher 127.0.0.1:1080中看到发送的电子邮件。但是,当我尝试从web浏览器访问相同的脚本时,mail()函数返回false,浏览器中没有显示任何错误,错误日志中也没有显示任何错误。在邮件日志中,我甚至可以看到对mail()函数的调用。

我不确定,可能是我的nginx/php-fpm配置错误,或者权限有问题。

禁用selinux。

如果您知道解决方案,请提供帮助。

提前感谢

EN

回答 4

Stack Overflow用户

发布于 2015-01-02 23:38:59

我在ubuntu 14.04上也遇到了同样的问题。

/etc/php5/cli/php.ini/etc/php5/fpm/php.ini具有相同的sendmail_path配置,但只有php-cli可以发送电子邮件。

对于我的环境,Mailcatcher在一个远程服务器上工作,我使用catchmail命令与它联系。

下面是我使用的sendmail_path

代码语言:javascript
运行
复制
sendmail_path = /usr/bin/env catchmail --smtp-ip mailcatcher-ip -f address@example.com

对于邮件php.ini文件,我必须指定catchmail的完整路径,邮件功能才能正常工作:

代码语言:javascript
运行
复制
sendmail_path = /usr/bin/env /usr/local/bin/catchmail --smtp-ip mailcatcher -f address@example.com
票数 6
EN

Stack Overflow用户

发布于 2018-10-25 17:45:57

如果您使用Mac OS Sierra或更高版本:

这里是catchmail的正确位置

更改sendmail_path = /usr/bin/env catchmail -f catcher@mailcatcher.me

sendmail_path = /usr/local/bin/catchmail -f someone@domain.com提供。

票数 3
EN

Stack Overflow用户

发布于 2015-04-14 17:00:04

使用php-fpm,它可以很好地使用RVM(?)提供的包装器脚本。

代码语言:javascript
运行
复制
sendmail_path = /usr/local/rvm/wrappers/default/catchmail
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24741681

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档