如何让 PHP mail() 工作?需要帮助配置 MTA
更新:我解决了.记录以下所有内容.
我尝试了很多东西,但都不起作用.
I tried so many things, but it just would not work.
我不介意使用 postfix、exim4 或 sendmail.我只需要一步一步的指导和解释我在做什么.我也在使用 Google Apps 发送电子邮件.
I wouldn't mind using, postfix, exim4, or sendmail. I just need a step by step guide and explanation of what am I doing. I am also using Google Apps for e-mail.
邮件日志
Nov 3 01:14:02 mugbear postfix[16615]: error: to submit mail, use the Postfix sendmail command
Nov 3 01:14:02 mugbear postfix[16615]: fatal: the postfix command is reserved for the superuser
这是什么意思?
更新到通过使用 sendmail_path =/usr/sbin/sendmail -t -i
PHP - 刚刚从文档中获取.仅供参考,我删除了我的电子邮件.
PHP - Just grabbed from documentation. FYI, I removed my e-mail.
<?php
// The message
$message = "Line 1
Line 2
Line 3";
// In case any of our lines are larger than 70 characters, we should use wordwrap()
$message = wordwrap($message, 70);
// Send
mail('removed@gmail.com', 'My Subject', $message);
?>
另一个错误:
Nov 3 07:22:29 mugbear postfix/postdrop[17131]: warning: unable to look up public/pickup: No such file or directory
Nov 3 07:22:29 mugbear postfix/postdrop[17133]: warning: unable to look up public/pickup: No such file or directory
<小时>
对 edit3 的更新:使用以下链接修复了此问题:http://ubuntuforums.org/showthread.php?t=666018运行这个:
sudo mkfifo /var/spool/postfix/public/pickup
sudo /etc/init.d/postfix restart
之后,你会得到这个错误:
After that, you'll get this error:
postfix/master[13902]: fatal: bind 0.0.0.0 port 25: Address already in use
然后您将不得不检查您的进程并终止 sendmail 进程,例如:
Then you will have to check your processes and kill sendmail processes, for example:
root@server:/etc/postfix# ps aux | grep mail
root 23554 0.0 0.0 8232 1900 ? Ss 10:17 0:00 sendmail: MTA: accepting connections
root 27308 0.0 0.0 3004 764 pts/0 S+ 10:30 0:00 grep mail
root@server:/etc/postfix# kill 23554
这是什么意思?
Nov 3 07:34:51 mugbear postfix/pickup[17309]: 6602F1C151: uid=33 from=<www-data>
Nov 3 07:34:51 mugbear postfix/cleanup[17311]: 6602F1C151: message-id=<20101103073451.6602F1C151@mugbear.xen.prgmr.com>
Nov 3 07:34:51 mugbear postfix/qmgr[17310]: 6602F1C151: from=<www-data@mugbear.com>, size=397, nrcpt=1 (queue active)
Nov 3 07:34:51 mugbear postfix/error[17321]: 6602F1C151: to=<mugbear@gmail.com>, relay=none, delay=0.03, delays=0.02/0/0/0.01, dsn=4.3.5, status=deferred (delivery temporarily suspended: Host or domain name not found. Name service error for name=xen.prgmr.com type=A: Host found but no data record of requested type)
<小时>
更新到 edit4:我运行了 dpkg-reconfigure postfix
并选择了 Internet Site
.
推荐答案
你是否正确安装了postfix?如果是 :服务后缀重启
did you properly installed postfix ? If yes : service postfix restart
纳米/etc/php.ini
nano /etc/php.ini
找到 sendmail_path ,改行为 sendmail_path =/usr/sbin/sendmail.postfix -t -i
Find sendmail_path , change the line to sendmail_path = /usr/sbin/sendmail.postfix -t -i
这里是 php 客户端的完整服务器/客户端安装说明 http://setahost.com/installing-postfix-as-a-default-mail-sending-program-with-php/
Here is the complete server / client installation instructions for php client also http://setahost.com/installing-postfix-as-a-default-mail-sending-program-with-php/
按照客户端安装说明...
follow client installation instructions ...
相关文章