【发布时间】:2011-05-03 12:50:55
【问题描述】:
我正在尝试使用 php 的 mail() 函数,但一直出错。我通过sudo apt-get install sendmail 安装了sendmail,编辑了我的/etc/php5/cli/php.ini 文件,在这些行中添加了以下文本:
sendmail_path = /usr/sbin/sendmail -t
sendmail_from = uslonsweb003.ALU@no-reply.com
然后我重新启动了我的网络服务器并使用此命令进行测试:
:~$ php -r "mail('sadmicrowave@gmail.com', 'test subject', 'test body message');"
但我每次都收到以下错误!!!:
sh: -t: not found
这很奇怪,因为我尝试了带 -t 和不带 -t 的 sendmail_path,但我一直收到同样的错误。我做错了什么?
更新!这是我的 phpinfo() 显示的内容:(我添加了 -t ,但无论有没有它,该命令都不起作用)。
另一个更新 -
我注释掉了 sendmail_path 和 sendmail_from 行以从头开始预期 mail() 函数抱怨 php 不知道它是什么,但我得到了与以前完全相同的错误(即使完全没有这两行! !)。这让我相信它根本与 sendmail 程序或 mail() 函数无关......
【问题讨论】:
-
不确定是否重要,但您是否重新启动了 sendmail?
-
@tony - 完全重启网络服务器应该做同样的事情......对吗? - 无论如何 - 手动重新启动服务,它仍然给出同样的错误。
标签: php apache2 webserver sendmail