我已经建立了一个本地托管的PHP站点。它的一个功能是发送一封包含购物车中商品的电子邮件。当在线托管(用于测试)时,email()函数可以完美地发送电子邮件。
我现在正在将网站转移到本地计算机,无法发送电子邮件。
最初这些电子邮件来自servername@hostname.co.uk虽然我很乐意设置一个gmail或类似的程序来处理发送,但效果很好。
我已经阅读了一些关于设置的教程,并首次尝试使用sendmail和gmail地址。
我想知道在设置ini文件时是否遗漏了一些简单的东西。
我编辑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
For Win32 only.
http://php.net/sendmail-from
sendmail_from = shipimageemail@gmail.com
; XAMPP IMPORTANT NOTE (1): If XAMPP is installed in a base directory with spaces (e.g. c:'program filesC:'xampp) fakemail and mailtodisk do not work correctly.
; XAMPP IMPORTANT NOTE (2): In this case please copy the sendmail or mailtodisk folder in your root folder (e.g. C:'sendmail) and use this for sendmail_path.
; XAMPP: Comment out this if you want to work with fakemail for forwarding to your mailbox (sendmail.exe in the sendmail folder)
sendmail_path = "'"C:'xampp'sendmail'sendmail.exe'" -t"
; XAMPP: Comment out this if you want to work with mailToDisk, It writes all mails in the C:'xampp'mailoutput folder
;sendmail_path="C:'xampp'mailtodisk'mailtodisk.exe"
; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =
; Add X-PHP-Originating-Script: that will include uid of the script followed by the filename
mail.add_x_header=Off
; Log all mail() calls including the full path of the script, line #, to address and headers
mail.log = "C:'xampp'php'logs'php_mail.log"
然后我的sendmail.ini文件如下:
[sendmail]
smtp_server=smtp.gmail.com
smtp_port=587
error_logfile=error.log
debug_logfile=debug.log
auth_username=shipimageemail@gmail.com
auth_password=password
force_sender=shipimageemail@gmail.com
试试这个
sendmail.ini
[sendmail]
smtp_server=smtp.gmail.com
smtp_port=465
smtp_ssl=ssl
error_logfile=error.log
debug_logfile=debug.log
auth_username=[email]@gmail.com
auth_password=[email password]
pop3_server=
pop3_username=
pop3_password=
force_sender=[email]@gmail.com
force_recipient=
hostname=smtp.gmail.com
php.ini
【邮件功能】
SMTP = smtp.gmail.com
smtp_port = 465
sendmail_path = "'"C:'xampp'sendmail'sendmail.exe'" -t"
mail.add_x_header=Off