背景:如果您为开发目的设置了本地apache服务器,则可能遇到sendmail需要很长时间(至少一分钟)才能发送电子邮件的问题.如果您尝试使用生成的电子邮件调试问题,这将非常令人沮丧.
原文链接:https://www.f2er.com/php/139837.html互联网上有几个论坛帖子讨论了这个问题.但是,没有一个主题描述了我的有限知识应该做些什么.以下是适合我的步骤:
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选项时会出现问题.您需要破解核心模块才能添加此选项.