使用 gmail 从本地主机发送邮件
Posted
技术标签:
【中文标题】使用 gmail 从本地主机发送邮件【英文标题】:send mail from local host with gmail 【发布时间】:2021-02-12 09:48:42 【问题描述】:嗨,亲爱的,我在使用 gmail 从 xampp(本地主机)发送电子邮件时遇到问题 这是我的 php.ini 代码==
[mail function]
SMTP=smtp.gmail.com
smtp_port=587
sendmail_from = mail@gmail.com
sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"
这是我的 sendmail.ini
smtp_server=smtp.gmail.com
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
auth_username=arodana5000@gmail.com
auth_password= my password
force_sender=
当我运行 PHP 文件发送邮件时,它会创建新的崩溃文件。这是崩溃请打开它file 请帮帮我
或者看看那里
**> 日期/时间 : 2020-10-29, 14:17:59, 963ms
computer name : MSI user name : Aro dana registered owner : Aro dana operating system : Windows NT New x64 build 9200 system language : English system up time : 4 days 14 hours program up time : 845 milliseconds processors : 12x Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz physical memory : 6920/16228 MB (free/total) free disk space : (C:) 9.56 GB (D:) 601.37 GB display mode : 1536x864, 32 bit process id : $20b4 allocated memory : 22.45 MB executable : sendmail.exe exec. date/time : 2012-04-16 20:30 compiled with : Delphi 2006/07 madExcept version : 3.0l callstack crc : $1d5da2f6, $c8f19877, $c8f19877 exception number : 1 exception class : EIdSocketError exception message : Socket Error # 11001 Host not found. main thread ($36ec): 00435e23 +0073 sendmail.exe IdStack 706 +42 TIdStack.RaiseSocketError 00433faf +0123 sendmail.exe IdStackWindows 1227 +55 TIdStackWindows.HostByName 00435a75 +006d sendmail.exe IdStack 571 +10 TIdStack.ResolveHost 00440a70 +00fc sendmail.exe IdIOHandlerStack 314 +23 TIdIOHandlerStack.ConnectClient 0046554d +0031 sendmail.exe IdSSLOpenSSL 2086 +8 TIdSSLIOHandlerSocketOpenSSL.ConnectClient 00444a9f +0063 sendmail.exe IdIOHandlerSocket 335 +13 TIdIOHandlerSocket.Open 00465637 +0007 sendmail.exe IdSSLOpenSSL 2122 +1 TIdSSLIOHandlerSocketOpenSSL.Open 0044157d +0235 sendmail.exe IdTCPClient 318 +53 TIdTCPClientCustom.Connect 00445cc8 +00a4 sendmail.exe IdExplicitTLSClientServerBase 257 +23 TIdExplicitTLSClient.Connect 0045ab7b +0017 sendmail.exe IdSMTP 373 +2 TIdSMTP.Connect 004b5f14 +1060 sendmail.exe sendmail 808 +326 initialization 77036357 +0017 KERNEL32.DLL BaseThreadInitThunk thread $5414: 77036357 +17 KERNEL32.DLL BaseThreadInitThunk thread $7080: 77036357 +17 KERNEL32.DLL BaseThreadInitThunk thread $6164: 77036357 +17 KERNEL32.DLL BaseThreadInitThunk stack dump: 0019fc58 28 5e 43 00 de fa ed 0e - 01 00 00 00 07 00 00 00 (^C............. 0019fc68 6c fc 19 00 28 5e 43 00 - 08 cc 45 02 ec 28 43 00 l...(^C...E..(C. 0019fc78 30 50 45 02 f9 2a 00 00 - a8 fc 19 00 88 fc 19 00 0PE..*.......... 0019fc88 b0 fc 19 00 c8 4b 40 00 - a8 fc 19 00 00 00 00 00 .....K@......... 0019fc98 00 00 00 00 00 00 00 00 - f9 2a 00 00 30 50 45 02 .........*..0PE. 0019fca8 f4 fc 19 00 b2 3f 43 00 - 1c fd 19 00 c8 4b 40 00 .....?C......K@. 0019fcb8 f4 fc 19 00 44 fd 19 00 - 4b 02 00 00 ec 28 43 00 ....D...K....(C. 0019fcc8 00 00 00 00 00 00 00 00 - 02 00 00 00 01 00 00 00 ................ 0019fcd8 00 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 ................ 0019fce8 00 00 00 00 00 00 00 00 - 00 00 00 00 10 fd 19 00 ................ 0019fcf8 77 5a 43 00 3c fd 19 00 - 00 00 00 00 ff ff ff 00 wZC.<........... 0019fd08 a8 a9 46 02 30 50 45 02 - 48 fd 19 00 75 0a 44 00 ..F.0PE.H...u.D. 0019fd18 3c fd 19 00 50 fd 19 00 - c8 4b 40 00 48 fd 19 00 <...P....K@.H... 0019fd28 14 3f 41 00 b0 f4 3e 02 - b0 f4 3e 02 90 69 44 02 .?A...>...>..iD. 0019fd38 00 00 00 00 00 00 00 00 - 00 00 00 00 b0 f4 3e 02 ..............>. 0019fd48 64 fd 19 00 52 55 46 00 - 78 fd 19 00 c8 4b 40 00 d...RUF.x....K@. 0019fd58 64 fd 19 00 14 3f 41 01 - b0 f4 3e 02 ac fd 19 00 d....?A...>..... 0019fd68 a5 4a 44 00 b0 f4 3e 02 - 3c 56 46 00 83 15 44 00 .JD...>.<VF...D. 0019fd78 84 fd 19 00 5f 4d 40 00 - ac fd 19 00 d8 fd 19 00 ...._M@......... 0019fd88 c8 4b 40 00 ac fd 19 00 - 14 3f 41 00 b0 f4 3e 02 .K@......?A...>. disassembling: [...] 00435e13 push eax 00435e14 mov ecx, [ebp-8] 00435e17 mov dl, 1 00435e19 mov eax, [$4352ac] 00435e1e call -$717 ($43570c) ; IdStack.EIdSocketError.CreateError 00435e23 > call -$3113c ($404cec) ; System.@RaiseExcept 00435e28 707 xor eax, eax 00435e2a pop edx 00435e2b pop ecx 00435e2c pop ecx 00435e2d mov fs:[eax], edx [...]**
【问题讨论】:
很可能没有人会下载并打开该文件。最好只在此处以文本形式包含相关消息 【参考方案1】:在 google 帐户中,您必须禁用 3rd 方应用程序的安全性才能通过该帐户发送电子邮件。或为此创建特殊的应用程序密码,否则谷歌不会让您发送该电子邮件。 https://support.google.com/accounts/answer/185833?hl=en
【讨论】:
嗨,我认为你是对的,请问我在哪里可以禁用它 你能检查一下吗:myaccount.google.com/lesssecureapps 但请检查所有不推荐的信息。【参考方案2】:症状
连接到远程主机时出现问题:
主机状态在查看器通讯簿中显示为“离线”。 可以建立远程连接,但连接不稳定。当您检查主机日志时,您会看到以下错误:Socket Error # 11001 Host not found.(EIdSocketError)
原因
此问题适用于 Internet-ID 连接。当使用这种连接类型时,程序会与网络上的中间服务器进行通信——根据您的设置,这可以是我们的公共服务器或您维护的自托管服务器。
此错误可能意味着远程主机由于以下原因之一不可用:
DNS 问题,即无法从其 DNS 名称解析中间服务器的 IP 地址。 中间服务器的地址和/或出站端口在防火墙中被阻止。要解决此问题,请按所列顺序尝试以下解决方案。
第 1 步
清除安装主机的计算机上的 DNS 缓存(以下步骤适用于 Windows 10):
-
按 Win + R 打开“运行”对话框。
键入 ipconfig /flushdns 并单击 OK(或按 Enter):Flush DNS
一个命令框将在屏幕上闪烁片刻,DNS 缓存被清除。
右键单击托盘区域中的主机图标,然后选择重新启动主机。等待 10-20 秒,直到主机重新启动并与中间服务器建立连接。
第 2 步
如果您使用我们的公共 Internet-ID 服务,请确保可以从主机 PC 访问位于 id.remoteutilities.com
的主服务器,并且可以成功解析服务器的 IP 地址。
-
按 Win + R 打开“运行”对话框。
键入 cmd 并单击 OK(或按 Enter)。命令提示符将打开。
输入 ping id.remoteutilities.com 并按 Enter。
如果 ping 命令和 DNS 解析成功,您应该会看到如下图所示的结果:Ping ID 服务器
如果您收到“请求超时”作为响应,则无法从主机位置访问 ID 服务器。请联系您的系统管理员。
【讨论】:
【参考方案3】:您需要允许在您的 google 帐户上使用其他应用程序,因为您的帐户不允许未定义的应用程序请求。 Gmail Application Allow 允许
【讨论】:
以上是关于使用 gmail 从本地主机发送邮件的主要内容,如果未能解决你的问题,请参考以下文章
如何使用带有 XAMPP 的 PHP 从本地主机发送电子邮件?