PHP邮件函数在aws ec2中不起作用
我试图在aws Windows Server 2016中实现PHP邮件功能,但在使用PHP邮件功能后,未收到邮件:PHP邮件函数在aws ec2中不起作用,php,Php,我试图在aws Windows Server 2016中实现PHP邮件功能,但在使用PHP邮件功能后,未收到邮件: <?php ini_set(); $to = "km.kuldeepmourya@gmail.com"; $subject = "My subject"; $txt = "Hello world!"; $headers = "From: webmaster@example.com" . "\r\n" . "CC: som
<?php
ini_set();
$to = "km.kuldeepmourya@gmail.com";
$subject = "My subject";
$txt = "Hello world!";
$headers = "From: webmaster@example.com" . "\r\n" .
"CC: somebodyelse@example.com";
$check=mail($to,$subject,$txt,$headers);
if($check)
echo"mail sent";
else
echo"mail not sent";
?>
PHP上的mail()
函数将始终返回false,除非您在服务器上的PHP.ini文件中定义了sendmail\u from
和sendmail\u路径。请确保定义了这些值
有关这些值的详细信息:
如果您无权访问ini文件,还可以在php脚本中使用ini\u set()
来设置这些值或在函数的附加头参数中设置这些值
快速提示:如果在上有警告,您将看到与这些关联的警告未定义。我建议在开发环境中打开警告,这样以后就不会被类似的东西卡住。警告消息告诉您需要了解的内容。PHP正在尝试连接到本地主机端口25上的MTA(邮件服务器)。在那里找不到MTA。这不是一个真正的PHP问题,而是一个windows上的邮件服务器问题。Windows将其称为SMTP服务器,因为这是邮件传输协议。您可能需要安装windows邮件服务器,或者安装windows server附带的打包SMTP服务器。是否有任何错误?我认为PHP邮件函数返回falseShow给我们看一些代码,到目前为止您尝试了什么,错误出在哪里。现在您可以看到代码这是否回答了您的问题?警告消息清楚地显示它正在尝试连接到本地MTA,但没有一个正在运行。我同意显式配置更好,甚至如果用户不打算在同一台计算机上使用MTA,则需要显式配置。
Warning: ini_set() expects exactly 2 parameters, 0 given in
C:\xampp\htdocs\mymail.php on line 2
Warning: mail(): Failed to connect to mailserver at "localhost" port 25,
verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in
C:\xampp\htdocs\mymail.php on line 9 mail not sent