gpt4 book ai didi

smtp - 如何配置 php.ini 以使用 gmail 作为邮件服务器

转载 作者:可可西里 更新时间:2023-10-31 22:14:39 24 4
gpt4 key购买 nike

我想学习 yii 作为我的第一个框架。我正在尝试使联系表正常工作。但是我得到了这个错误: alt text

我已经从以下位置配置了 php.ini 文件:

C:\wamp\bin\php\php5.3.0

并将默认值更改为这些值:

 [mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = ssl:smtp.gmail.com
; http://php.net/smtp-port
smtp_port = 23

; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = myemail@gmail.com

我从这里看到 gmail 不使用端口 25,这是 php.ini 中的默认端口。所以我使用了 23。并且还在 Windows 7 防火墙中打开了那个端口。通过入站规则。

然后我还编辑了我的 yii 应用程序中的主要配置,以匹配我正在使用的电子邮件:

// application-level parameters that can be accessed
// using Yii::app()->params['paramName']
'params'=>array(
// this is used in contact page
'adminEmail'=>'myemail@gmail.com',
),
);

最后,我重新启动了 wampserver。然后清除了我所有的浏览数据。为什么然后我仍然看到它在错误中指出端口 25。我错过了什么吗?请帮忙。

最佳答案

这是一个简单的 python 脚本,可以让您在本地主机上运行邮件服务器,您无需更改任何内容。对不起,如果我来晚了。

import smtpd

import smtplib

import asyncore

class SMTPServer(smtpd.SMTPServer):

def __init__(*args, **kwargs):
print "Running fake smtp server on port 25"
smtpd.SMTPServer.__init__(*args, **kwargs)

def process_message(*args, **kwargs):
to = args[3][0]
msg = args[4]
gmail_user = 'yourgmailhere'
gmail_pwd = 'yourgmailpassword'
smtpserver = smtplib.SMTP("smtp.gmail.com",587)
smtpserver.ehlo()
smtpserver.starttls()
smtpserver.ehlo
smtpserver.login(gmail_user, gmail_pwd)
smtpserver.sendmail(gmail_user, to, msg)
print 'sent to '+to
pass

if __name__ == "__main__":
smtp_server = SMTPServer(('localhost', 25), None)
try:
asyncore.loop()
except KeyboardInterrupt:
smtp_server.close()

#end of code

注意:我使用 args[3][0] 和 args[4] 作为地址和消息,因为我的 php mail() 发送的 args 对应于一个 args[3][0] 数组作为收件人电子邮件

关于smtp - 如何配置 php.ini 以使用 gmail 作为邮件服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4095289/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com