我有一个 ubuntu 桌面安装,而不是服务器。但我正在运行 localhost LAMP 堆栈进行开发。有没有我可以安装的简单邮件服务器,以便 PHP 的 sendmail 可以正常工作?
理想情况下,它将具有少量选项和最低限度的配置,并且最好是 GUI 而不是 CL 界面。
编辑以添加-我是否使用仅本地配置来测试 php mail()?
答案1
正是postfix
需要。
对于设置,只需使用默认值。互联网站点。当您进入它时,有一个部分用于设置哪些计算机可以通过服务器中继邮件。默认值为 127.0.0.1(措辞略显冗长),这很好。这意味着即使另一台计算机可以连接到 Postfix,也postfix
不会允许它将邮件发送到任何地方,只能发送到 Postfix 接受为“本地”域的目的地。
但良好的网络安全不会带来坏处。路由器阻止传入连接和/或防火墙(参见ufw
)将阻止任何其他人联系postfix
。
如果需要重新配置,只需运行:
sudo dpkg-reconfigure postfix
答案2
我安装过的最简单的是带有 dovecot 的 postfix。有一个 dovecot-postfix 包,但 Ubuntu 服务器团队似乎也将其打包为 mail-stack-delivery :
Description: mail server delivery agent stack provided by Ubuntu server team
Ubuntu's mail stack provides fully operational delivery with
safe defaults and additional options. Out of the box it supports IMAP,
POP3 and SMTP services with SASL authentication and Maildir as default
storage engine.
查看软件中心,我发现 dovecot-postfix 是作为元软件包存在的(但我不知道从现在起一两个版本中它是否会被称为元软件包)。但这就是我推荐的——它简单又安全。
从我的 10.10 桌面上的命令行,我通过 apt-get 安装了它:
sudo apt-get install dovecot-postfix
如果您愿意,可以尝试一下;如果您有疑问,只需开始一个新帖子。
这是一部老片子(2009)Ubuntu 服务器博客文章给出了有关 dovecot-postfix 配置的一些详细信息。
我正在尝试查找有关以 Ubuntu 为中心的邮件服务器项目当前状态的更多信息。目前,我找不到太多信息,除了2010 年 5 月维基帖子关于使反垃圾邮件/病毒集成更容易。
答案3
如果你只想在本地调试,可以按照这个方法在 stackoverflow 上提出。php.ini 中的一行,无需额外的软件包。将您发送的邮件写入一个文件,如果您想调试 html 邮件,可以使用邮件客户端打开该文件。
sendmail_path = 'tee /tmp/mylocal.mail > /dev/null'
答案4
您不需要邮件服务器来发送电子邮件,只需要接收电子邮件即可。要发送电子邮件(使用sendmail
),请选择Internet with smarthost
选项。