我是PHP的初学者,我正在尝试从我的localhost发送邮件,但它不起作用。正在寻找一些解决方案但似乎没有任何帮助。有人请指教。
这是我的sendmail.ini文件(保存在C:\ xampp \ sendmail \ sendmail.exe中)
smtp_server=smtp.gmail.com
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
auth_username=my-id@gmail.com
auth_password=my-password
force_sender=my-id@gmail.com
这是我在SMTP部分上的一小部分php.ini:
[mail function]
; XAMPP: Comment out this if you want to work with an SMTP Server like Mercury
SMTP=smtp.gmail.com
smtp_port=587
sendmail_from = my-id.com
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
这是我的PHP文件:
<?php
$to = "test@gmail.com";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";
if (mail($to, $subject, $body)) {
echo("<p>Message successfully sent!</p>");
} else {
echo("<p>Message delivery failed...</p>");
}
?>
我总是收到“无论我尝试什么,邮件传递失败。请帮助
答案 0 :(得分:0)
请务必在php.ini中注释掉您未使用的邮件功能:
[mail function]
;SMTP = localhost
;smtp_port = 25
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
;sendmail_path="C:\xampp\mailtodisk\mailtodisk.exe"
只有在运行自己的smtp服务器时才需要SMTP和smtp_port。第二个sendmail_path运行一个程序,将所有邮件写入mailoutput文件夹。