问题描述
我尝试了很多搜索,但无法找到如何实际设置ubuntu服务器的方法,因此我可以使用php中的 mail()函数通过php发送邮件。
我的服务器上安装了apache2,mysql和php5。
谢谢。
最佳答案
我也同意,对于只需要脚本发送的人来说,缺少教程。错误的电子邮件,并且不需要full-blown邮件服务器。
首先,如果尚未安装postfix,请执行以下操作:
sudo apt-get install postfix
它提示了几个问题。首先,我选择了”Internet site”;对于位于防火墙后面的计算机,我可能会选择smarthost。对于第二个问题,它默认为计算机名称。我添加了一个我控制的域名(以便以后可以为我设置DNS)。
此时,您应该可以从命令行使用”mail”发送测试。 (通常,我通常先按照http://ubuntuforums.org/showthread.php?t=38429上的说明进行操作,否则我必须对/usr/bin/sendmail
使用-f
标志。我也想为/etc/aliases
创建root用户和普通用户条目,然后运行newaliases
)
然后在/etc/php5/conf.d下创建一个包含以下内容的文件(例如mailconfig.ini):
sendmail_from = "me@example.com"
sendmail_path = "/usr/sbin/sendmail -t -i -f me@example.com"
将me@example.com更改为您的电子邮件地址。它们意味着所有电子邮件看起来都像是您发送的,这有助于防止电子邮件被拒绝。仅向开发人员发送错误电子邮件就足够了。
(以上说明已在Ubuntu 10.04、11.04、11.10、12.04上进行了测试)
附言正如评论中的怒吼所指出的那样,mail
并不总是存在(例如在Ubuntu 11.10上丢失)。这实际上不会影响上述说明,您只需要mail
进行测试,就可以使用sendmail
。但是mail
对于阅读电子邮件也很有用,因此通常值得安装它,方法是:apt-get install mailutils
(作为根用户)。