设置SMTP服务器以与AJAX/PHP联系人表单配合使用

设置SMTP服务器以与AJAX/PHP联系人表单配合使用,php,email,smtp,server,Php,Email,Smtp,Server,我目前在我的网站上创建联系人表单时遇到问题 我想在我的网站上使用一个使用本地电子邮件服务器(postfix)发送邮件的联系表单 目前,我在实现此功能时遇到问题。是否需要SMTP服务器将填写好的联系人表单发送到特定的电子邮件地址 例如 <?php if(isset($_POST['submit'])){ $to = "email_goes_here"; $email = $_POST['email']; $name = $_POST['name']; $message = $_POS

我目前在我的网站上创建联系人表单时遇到问题

我想在我的网站上使用一个使用本地电子邮件服务器(postfix)发送邮件的联系表单

目前,我在实现此功能时遇到问题。是否需要SMTP服务器将填写好的联系人表单发送到特定的电子邮件地址

例如

 <?php 
if(isset($_POST['submit'])){
$to = "email_goes_here"; 
$email = $_POST['email']; 
$name = $_POST['name'];
$message = $_POST['message'];


$headers = "From:" . $email;
mail($to,$email,$name,$message);
echo "Mail Sent. Thank you " . $name . ", we will contact you shortly.";

}
?>

我是否需要SMTP服务器将捕获的数据成功发送到电子邮件地址?(捕获的数据是放入表单的数据,使用POST方法存储)

如果到目前为止我的思路是正确的,有人能给我指出配置SMTP服务器以使用PHP的正确方向吗

这种联系方式简直就是一场噩梦


提前谢谢

假设您的电子邮件服务器工作正常,因此您可以使用它收发电子邮件,php在本地主机内发送电子邮件所需的唯一配置是在其php.ini文件中:

[mail function]
SMTP = localhost
smtp_port = 25
sendmail_path = "/usr/sbin/sendmail -t -i"
前3行可能已经在您的标准配置中,第4行与您相关

修改文件并重新启动Apache服务器后保存该文件

在终端窗口中键入以下命令,检查新配置是否正常工作:

echo testing | mail -s Test email@domain.com
问候

编辑:

有关postfix的sendmail命令的详细信息:


您需要正确配置的STMP服务器来发送电子邮件,是的。你的这台服务器是自己的服务器还是你的网站托管在其他地方?这台服务器是我自己的服务器,我目前使用post fix作为电子邮件服务器。我进入php.ini并更改了这些参数,但仍然没有更改。当然我没有遗漏什么“回声测试”邮件测试的输出是什么email@domain.com“?终端命令什么也没做,只是创建了一个新行。我可以远程登录服务器,路由似乎不起作用。发送的电子邮件不起作用。请再次使用terminal命令,然后查看后缀日志以检测任何相关问题。日志文件应位于/var/Log/mail.Log