我在网上找到了一个 php 脚本:
<?php
$to = "*******@yahoo.com";
$subject = "Test mail";
$message = "Hello! This is a simple email message.";
$from = "****@*****.nu";
$headers = "From:" . $from;
mail($to,$subject,$message,$headers);
echo "Mail Sent.";
?>
如果我从我的网络酒店使用它,它会完美运行。但我需要它在我的家庭服务器上运行,而我只是没有收到任何东西。我尝试使用 php -f phpTest
运行它,并通过本地 ip (10.0.0.2) 和使用全局主机名。我只是收到“邮件发送”而没有收到邮件。
这是我运行的 ubuntu 服务器,它使用 apache2。就像我说的,脚本没有错,因为它适用于网络酒店。它应该与我的本地设置有关,但我不知道是什么。
我们将不胜感激!
\\恶魔
最佳答案
PHP mail
函数使用本地 MTA(邮件传输代理),这是一个邮件守护进程,与您的 PHP 解释器和 Apache Web 服务器运行在同一台机器上。
因此您必须在您的 Ubuntu 设置中安装和配置一个。 sendmail
是经典的,但据说 exim
易于配置,并且可以将您当前的 SMTP 服务器用作智能主机中继,这非常适合家庭服务器。
sudo apt-get install exim4-daemon-light
sudo dpkg-reconfigure exim4-config
关于php - 无法通过 php 脚本发送邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19344041/