【发布时间】:2019-03-27 14:57:47
【问题描述】:
所以我的 maling.php 文件中有用于发送电子邮件的基本代码,但没有运气 - 总是返回“邮寄失败”
<?php
$emailTo = "{mymail}@gmail.com";
$subject = "This should work";
$body = "Hellou mark mun";
$headers = "From: {mysecondmail}@gmail.com";
if (mail($emailTo,$subject,$body,$headers)){
echo "Email was send";
}else{
echo "Mailing failed";
}
?>
我已尝试更改我的 sendmail.ini 和 php.ini 文件中的配置,如许多教程中所述,但它不起作用,所以现在我的文件只包含以下内容:
;php.ini
SMTP=smtp.gmail.com
smtp_port=587
sendmail_from = {mymail}@gmail.com
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
和
;sendmail.ini
[sendmail]
smtp_server=smtp.gmail.com
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
auth_username={mymail}@gmail.com
auth_password={mypass}
如果我使用上述配置和代码运行它,我将在 debug.log 中收到此消息:
18/10/23 13:14:52 ** --- MESSAGE BEGIN ---
18/10/23 13:14:52 ** To: gazchamber.music@gmail.com
18/10/23 13:14:52 ** Subject: This should work
18/10/23 13:14:52 ** From: marekpatras@seznam.cz
18/10/23 13:14:52 **
18/10/23 13:14:52 ** Hellou mark mun
18/10/23 13:14:52 ** --- MESSAGE END ---
18/10/23 13:14:54 ** Connecting to smtp.gmail.com:587
18/10/23 13:14:54 ** Connected.
18/10/23 13:14:54 << 220 smtp.gmail.com ESMTP l11-v6sm1398703wrn.61 - gsmtp<EOL>
18/10/23 13:14:54 >> EHLO Lenovo-PC<EOL>
18/10/23 13:14:54 << 250-smtp.gmail.com at your service, [89.176.232.140]<EOL>250-SIZE 35882577<EOL>250-8BITMIME<EOL>250-STARTTLS<EOL>250-ENHANCEDSTATUSCODES<EOL>250-PIPELINING<EOL>250-CHUNKING<EOL>250 SMTPUTF8<EOL>
18/10/23 13:14:54 ** Authenticating as gazchamber.music@gmail.com
18/10/23 13:14:54 >> STARTTLS<EOL>
18/10/23 13:14:54 << 220 2.0.0 Ready to start TLS<EOL>
18/10/23 13:14:54 >> QUIT<EOL>
18/10/23 13:14:54 << 5 1[Ď®»˘Ĺ“5Ô3p +şňźşŚ@Î.đ<¤-ť˝dĂ” / ˙ # ó ď ě †0‚‚0‚j aŚČĐ‚LÔ0
*†H†÷
0T10 UUS10U
Google Trust Services1%0#UGoogle Internet Authority G30
181009130800Z
190101130800Z0h10 UUS10U
California10U
Mountain View10U
Google LLC10Usmtp.gmail.com0‚"0
*†H†÷
‚ 0‚
‚ ćŃ—P™Ĺ@ʸPJeJíŹK9tąLnFdÝťšl¨T]”›íĐđi1=*xpŃ?Ą_ţxŞWŇĚ#±~ÎJż‡ď›FÝ,,Ģż…ČŹçĺźxMÄžľCYP‚"eÂéJe&Ř-wVůŇB‹0Ë˝ŹŞŻKä⟍&łS¨ tşs›Ťz÷G…ÓîĎ…Kâ‘|Â)ťfśN˘1k^'ÜŽfąVôn
—gAňŞđ«Ô†s›(ŹŃíg“ştçËYűĐIDô+;ţ`ęqńH°Ýn23ÍżĄřW$c« —†ăo±ßť€Jn(jjá\ÄfěˇÁ Ł‚B0‚>0U%0
+0U0‚smtp.gmail.com0h+\0Z0-+0†!http://pki.goog/gsr2/GTSGIAG3.crt0)+0†http://ocsp.pki.goog/GTSGIAG30UűâíDłëüýud€\Ś“ŮÝŚ0U˙0 0U#0€w¸Pšgvv±-†Р~¦~şK0!U 00
+Öy0g01U*0(0& $ "† http://crl.pki.goog/GTSGIAG3.crl0
*†H†÷
‚ ľ%Ú{Ĺ=$ń˘YEź/˝=FŢ9bžwŔ…§ˇŕăî>Ý i-¶Ó»ü$ qÍň+áhŞź«w ďü9G߸‘ ×ч
5Ř/ŻüQyG8Ä°Ř aC$ds¶ŃćhTľĚ`3 ˘…]MĐNXe‚EfËM—´´ŽkIţ‡[])Rář~6Úgë
_D[Y0ńĂ™Ĺ=$‰ű/říř{ć§#j:Ś:ŰÚ9ţIÝŃ&¨zćµÉůÚ|Ť4“•ŢK js"¬Nf,ŇM‡Đ/|…mĎ‹ĂU ć˙“’ő™ęŢIÖ‚XÝBOIňk=ş~Ë.ö»>ł€W `0‚\0‚D
ă©0ür8?šS0
*†H†÷
0L1 0UGlobalSign Root CA - R210U
GlobalSign10U
GlobalSign0
170615000042Z
211215000042Z0T10 UUS10U
Google
18/10/23 13:14:54 << Trust Services1%0#UGoogle Internet Authority G30‚"0<CR> *†H†÷<CR> ‚ 0‚
‚ ĘRKę˙Î$k¨ÚrhŐV]HZ-5 vZϤȱ©ţS‰ű4˙[ź»çč Ü5suł±ą¤}+&yÎ@
ďQ¸ź2Ś|p†RKţj'kć6zbPŘßš‰Ě )ëO)€Ź8€j|˝—;x}EI6OA͢ŕvW<h1ydÉn×Qfâd,yŔçeĂV„SZCmËš ŇďiѰťs˘ŕ*`eP1Ďűł/ż@.µI
nÜ—úż,ź9XTŻ–čĹŽĽ¨MAĹ“‘˘ˇ‹ňţÁ$IŁGKĹݧWib+ëţ ďiű:Ąđ~)îí–÷± ä%ŕ3 Ł‚30‚/0U˙†0U%0++0U˙0˙ 0Uw¸Pšgvv±-†Р~¦~şK0U#0€›âWgŔjŢY´š-ß܆.05+)0'0%+0†http://ocsp.pki.goog/gsr202U+0)0' % #†!http://crl.pki.goog/gsr2/gsr2.crl0?U 80604g0*0(+https://pki.goog/repository/0
*†H†÷
‚ ·‰–äSí»ěۨ2ź,ŁÍmBwł¸ćÉR` {W'Ƶ?g
™,[ZĘ"
Ýž»KH?Ź=‹!„Emő˙¬h‰ÍdâÖÖ^@ÂŽ*÷ďÓ6¤@0ő2’vű~žSęÂvü9ţf’&éÄ8ÍIúC‡đ]ÖVM×ńÂݰMţĂ*n|źn\íbB™á÷6îŚ, ăF—ZwŔ ĆJý@"‡rZꜥÇZŚä¤}ą„5_‰6V@=č»5ríŻVN°».©›äű>cČ›K‘DfWŔ´–đÜ,W?R•Ş}MĐňźś@čÖUsş<ßË [!gÂí2Ţ
18/10/23 13:14:54 << F
18/10/23 13:14:54 ** Disconnected.
18/10/23 13:14:54 ** Disconnecting from smtp.gmail.com:587
18/10/23 13:14:54 ** Disconnected.
18/10/23 13:14:54 ** Disconnected.
18/10/23 13:14:54 ** Connection Closed Gracefully.
我几乎尝试了所有我发现的东西:
- 禁用调制解调器和 Windows 防火墙
- 尝试了多个端口 465,587,25
- 尝试了多个邮件服务器(除了 gmail)
- 将我的 php 和 sendmail 文件的属性更改为以管理员身份运行,并尝试在兼容模式下运行它们
- 当我对配置文件进行更改时,我已经重新启动了 Apache
- 尝试了多个配置文件(默认 XAMPP 有更改,从头开始创建一个..) 有谁知道是什么原因导致的?错误日志稍有更改,它会记录:“连接已正常关闭。”或“断开连接”。或两者都有,如示例所示。
【问题讨论】:
-
让电子邮件在 localhost 上运行一直非常困难。为了让它更容易一些,我建议使用久经考验的邮件类。
-
请不要使用mail()函数。 Gmail 必须通过安全连接 (TLS) 传输。最好使用“PHPMailer”或“Swift Mailer”或“zend-mail”。
标签: php xampp smtp sendmail mail-server