2013-05-17 102 views
1

在php.ini中我設置:如何使用XAMPP使用Google SMTP服務器發送電子郵件?

SMTP = smtp.gmail.com 
smtp_port = 465 

; For Win32 only. 
; http://php.net/sendmail-from 
sendmail_from = [email protected] 

在我sendmail.ini:

smtp_server=smtp.gmail.com 
smtp_ssl=ssl 
[email protected] 
auth_password=mygmail password 

在我的錯誤日誌:

13/05/18 23:33:30 : Socket Error # 10060<EOL>Connection timed out. 

實際發送兩次郵件,但99%的時候,我得到了和上面一樣的錯誤。我禁用了路由器的SPI,以及我電腦的防火牆。有任何想法嗎?

回答

4

帶Windows的大多數本地盒子都不帶有SMTP服務器。您可以使用外部SMTP服務器並在您的php.ini文件中對其進行配置,但SMTP驗證是不可能的。

我建議你使用PHPMailer,它是一個簡單靈活的PHP類,它可以使用SMTP服務器進行身份驗證。它比使用捆綁的PHP mail()函數更安全。

http://phpmailer.worxware.com/

+0

馬塞洛,我非常感謝您的回覆。 '外部'SMTP服務器是什麼意思?你的意思是我沒有託管嗎?爲什麼不能SMTP認證?使用密碼訪問服務器不是簡單的身份驗證嗎?不要谷歌郵件服務器使用身份驗證? 此外,使用PHPMailer只是讓發送郵件更容易。我仍然需要服務器!請閱讀上面的編輯。我試圖使用谷歌的服務器,但它不工作。 – user2316667

+0

我沒有經驗在Win中設置sendmail,似乎SMTP驗證是可能的。我正在談論我在標準'php.ini'文件中看到的,在[郵件功能]部分,那裏沒有SMTP認證。無論如何,你應該看看你的錯誤日誌,看看發生了什麼。通過「外部SMTP服務器」,我指的是例如Gmail服務器。有了Gmail,還可以爲'smtp_ssl'配置值嘗試'tls'。 –

相關問題