php mail()函数在本地开发机器上很慢

前端之家收集整理的这篇文章主要介绍了php mail()函数在本地开发机器上很慢前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
背景:如果您为开发目的设置了本地apache服务器,则可能遇到sendmail需要很长时间(至少一分钟)才能发送电子邮件的问题.如果您尝试使用生成的电子邮件调试问题,这将非常令人沮丧.

互联网上有几个论坛帖子讨论了这个问题.但是,没有一个主题描述了我的有限知识应该做些什么.以下是适合我的步骤:

1)使用此命令找到您的主机名(如果您忘记了它):

:〜$cat / hosts / hostname

MYHOSTNAME

2)编辑文件/ etc / hosts并确保第一行是以下内容

127.0.0.1 localhost.localdomain localhost myhostname

3)编辑sendmail配置文件(Ubuntu中的/etc/mail/sendmail.cf)和
取消注释#O HostsFile = / etc / hosts行

4)重新启动计算机.计算机现在启动速度要快得多,而且mail()函数应该立即返回.但是,除非您按照步骤5执行,否则实际上不会发送电子邮件.

5)每当使用邮件功能时,您必须新使用sendmail’-f’选项.例如:

mail(‘recipient@somewhere.com’,’主题’,’消息’,null,’ – fsender @ somewhere.com’);

我对其他服务器用户的问题是:

可以进行哪些进一步的更改,以便我不必使用sendmail -f选项?虽然添加-f选项并不是很难,但是当您的CMS(例如Drupal)在发送邮件时不使用-f选项时会出现问题.您需要破解核心模块才能添加此选项.

嗯,我知道这不是你要问的,但为什么你不尝试Postfix或Exim?它们都可用于ubuntu(Postfix甚至是Ubuntu系统上的默认mta),它们都提供兼容的“sendmail”命令,效果非常好.恕我直言sendmail有点过时了,你会有更好的机会获得更现代的MTA支持.
原文链接:https://www.f2er.com/php/139837.html

猜你在找的PHP相关文章