gpt4 book ai didi

php - 通过 Gmail SMTP 在 CodeIgniter 中发送电子邮件时遇到问题

转载 作者:太空宇宙 更新时间:2023-11-03 13:41:47 24 4
gpt4 key购买 nike

我正在尝试使用 Gmail SMTP 服务器从我使用 CodeIgniter 构建的应用程序发送电子邮件,但没有成功。我使用我的 Gmail 帐户作为用户,但我正在更改这里的配置以保密。我使用了下面的代码

$config['protocol'] = 'smtp';
$config['smtp_host'] = 'ssl://smtp.gmail.com';
$config['smtp_port'] = 465;
$config['smtp_user'] = 'myemail@gmail.com';
$config['smtp_pass'] = 'mypassword';
$config['mailtype'] = 'html';


//load email library
$this->load->library('email', $config);
$this->email->set_newline("\r\n");
$message = "Please validate your registration using this link: $link.";
$this->email->to($email);
$this->email->from('myemail@gmail.com', 'John Doe');
$this->email->subject('Validate Your Registration');
$this->email->message($message);
if($this->email->send())
{
$this->session->sess_destroy();
redirect(base_url()."thanks/indi/$id");
}
else
{
show_error($this->email->print_debugger());
}

以下是每次出现的 2 条错误消息:

A PHP Error was encountered

Severity: Warning

Message: mail(): Failed to connect to mailserver at "ssl://smtp.googlemail.com" port 465, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set()

Filename: libraries/Email.php

Line Number: 1553

An Error Was Encountered

Unable to send email using PHP mail(). Your server might not be configured to send mail using this method.

From: "John Doe" Return-Path: Reply-To: "myemail@gmail.com" X-Sender: myemail@gmail.com X-Mailer: CodeIgniter X-Priority: 3 (Normal) Message-ID: <52333cd2aa4fb@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit =?utf-8?Q?Validate_Your_Registration?= Please validate your registration using this link: http://mywebsite.com/registration/index.php/validate/32/1afa34a7f984eeabdbb0a7d494132ee5.

我尝试了 587 作为端口,ssl://smtp.googlemail.com 作为主机,并尝试了不同的组合来尝试它是否有效。我也尝试使用通常的数组构造函数来声明配置数组(例如 $config = array('protocol' => 'smtp', ...)/$config = Array('protocol' => 'smtp', .. .) ).我什至尝试将端口放在单引号内,并在配置中添加一个 smtp_timeout。

另外,我根据这个页面的内容设置了我的 php.ini:http://adisembiring.wordpress.com/2010/01/17/sending-gmail-email-using-codeigniter/extension=php_openssl.dll 没有注释,但我找不到这一行:extension=php_smtp.dll 上面的站点中提到了它,所以我只是设置了 < strong>[邮件功能] 像这样的部分

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

我应该怎么做才能让它正常工作?关于我缺少什么的任何想法?谢谢。任何帮助表示赞赏:)

最佳答案

如果您使用两步验证,是否已生成应用程序专用密码?

关于php - 通过 Gmail SMTP 在 CodeIgniter 中发送电子邮件时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18791375/

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