简体   繁体   English

如何解决错误:消息:fsockopen():无法连接到 ssl://smtp.gmail.com:465(连接被拒绝)

[英]How to resolve the error: Message: fsockopen(): unable to connect to ssl://smtp.gmail.com:465 (Connection refused)

I'm using codeigniter I created one email function to send email to particular email ID我正在使用codeigniter我创建了一个 email function 将 email 发送到特定的 email ID

public function email($email){
        $config['protocol'] = 'smtp';
        $config['smtp_host'] = 'ssl://smtp.gmail.com';
        $config['smtp_timeout']=5;
        $config['smtp_port'] = '465';
        $config['smtp_user'] = 'MyEmailID@gmail.com';
        $config['smtp_pass'] = '********************';
        $config['mailtype'] = 'html';
        $config['charset'] = 'utf-8';
        $config['newline'] = "\r\n";
        $config['wordwrap'] = TRUE;
        $this->load->library('email');
        $this->email->initialize($config);

        $this->email->from('MyEmailID@gmail.com', 'MyEmailID');
        $this->email->to($email);
        $this->email->subject('My Subject');
        $this->email->message('My Message');
        return $this->email->send();
    }

That's working nice in my local machine but when I uploaded that code to hosting server ( I'm using Godaddy hosting ) I'm getting following error:这在我的本地机器上运行良好,但是当我将该代码上传到托管服务器时(我正在使用Godaddy托管),我收到以下错误:

A PHP Error was encountered遇到 PHP 错误

Severity: Warning严重性:警告

Message: fsockopen(): unable to connect to ssl://smtp.gmail.com:465 (Connection refused)消息:fsockopen():无法连接到 ssl://smtp.gmail.com:465(连接被拒绝)

Filename: libraries/Email.php文件名:libraries/Email.php

Line Number: 2020行号:2020

Backtrace:回溯:

File: /home/MyDir/public_html/application/models/BasicModel.php Line: 47 Function: send文件:/home/MyDir/public_html/application/models/BasicModel.php 行:47 Function:发送

File: /home/MyDir/public_html/application/controllers/Login.php Line: 48 Function: email文件:/home/MyDir/public_html/application/controllers/Login.php 行:48 Function:email

File: /home/MyDir/public_html/index.php Line: 315 Function: require_once文件:/home/MyDir/public_html/index.php 行:315 Function:require_once

Use Tls istead of ssl and change port number to 587 $this->email->initialize($config);使用 Tls 代替 ssl 并将端口号更改为 587 $this->email->initialize($config); $config = array(); $config = array();

     //Load email library 
        $config['protocol']    = 'smtp';
        $config['smtp_host']    = 'tls://smtp.gmail.com';
        $config['smtp_port']    = '587';
        $config['smtp_timeout'] = '7';
        $config['smtp_user']    = 'email';
        $config['smtp_pass']    = 'password';
        $config['charset']    = 'utf-8';
        $config['wordwrap'] = TRUE;
        $config['mailtype'] = 'html';
        $config['validation'] = TRUE; // bool whether to validate email or not      



            $this->email->set_newline("\r\n");
            ;
            $this->email->clear(TRUE);
            $this->email->to($this->input->post('email'));
            $this->email->subject($row_email->email_subject);

working site工作现场

Change from:更改自:

$config['smtp_host'] = 'smtp.seuDominio.com';

To:到:

$config['smtp_host'] = 'mail.seuDominio.com';
$config['smtp_port'] = 587; //587
$config['smtp_user'] = 'seu@dominio.com';
$config['smtp_pass'] = 'suaSenha';

Change from:更改自:

$config['protocol']  = 'smtp'; 

To:到:

$config['protocol']  = 'mail';
$config['validate']  = TRUE;
$config['mailtype']  = 'html';
$config['charset']   = 'utf-8';
$config['newline']   = "\r\n";

This kind of error was in my case caused by a source server firewall blocking the the SMTP connection.在我的案例中,这种错误是由源服务器防火墙阻止 SMTP 连接引起的。

It can help to unblock/whitelist destination IP or disable SMTP blocking/whitelist user in ConfigServerFirewall (if used) configuration:它可以帮助取消阻止/白名单目标 IP 或禁用 SMTP 在 ConfigServerFirewall(如果使用)配置中阻止/白名单用户:

SMTP_BLOCK = off
SMTP_ALLOWUSER = usernamehere

You forgot to add '你忘了加 '

change from从改变

 $config['smtp_host'] = 'ssl://smtp.gmail.com';

to

$config['smtp_host'] = 'smtp.gmail.com';

or或者

Uncomment php_openssl.dll in php.ini在 php.ini 中取消注释php_openssl.dll

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 在Codeigniter中无法发送电子邮件-fsockopen():无法连接到ssl://smtp.gmail.com:465(连接被拒绝) - in Codeigniter Unable to send email - fsockopen(): unable to connect to ssl://smtp.gmail.com:465 (Connection refused) 消息:fsockopen():无法连接到ssl://smtp.gmail.com:465(连接超时) - Message: fsockopen(): unable to connect to ssl://smtp.gmail.com:465 (Connection timed out) 连接失败。 错误 #2:stream_socket_client():无法连接到 ssl://smtp.gmail.com:465(连接被拒绝) - Connection failed. Error #2: stream_socket_client(): unable to connect to ssl://smtp.gmail.com:465 (Connection refused) [SMTP:无法连接套接字:fsockopen():无法连接至ssl://smtp.gmail.com:465(未知错误)(代码:-1,响应:)] - [SMTP: Failed to connect socket: fsockopen(): unable to connect to ssl://smtp.gmail.com:465 (Unknown error) (code: -1, response: )] Connection could not be established with host smtp.gmail.com:stream_socket_client(): unable to connect to ssl://smtp.gmail.com:465 - Connection could not be established with host smtp.gmail.com :stream_socket_client(): unable to connect to ssl://smtp.gmail.com:465 Codeigniter电子邮件无法在服务器fsockopen()中工作:无法连接至ssl://smtp.googlemail.com:465(连接被拒绝) - Codeigniter Email did not Working in Server fsockopen(): unable to connect to ssl://smtp.googlemail.com:465 (Connection refused) Laravel 3-错误:与smtp.gmail.com的连接:465超时 - Laravel 3 - error: Connection to smtp.gmail.com:465 Timed Out PHPMailer错误连接:打开到ssl://smtp.gmail.com:465,timeout = 300,options = array() - PHPMailer error Connection: opening to ssl://smtp.gmail.com:465, timeout=300, options=array () CodeIgniter电子邮件:fsockopen():无法连接到ssl://smtp.gmail.com托管中 - CodeIgniter email: fsockopen(): Unable to connect to ssl: //smtp.gmail.com in hosting 讯息:fsockopen():无法连接至ssl://smtp.googlemail.com:465(权限被拒绝) - Message: fsockopen(): unable to connect to ssl://smtp.googlemail.com:465 (Permission denied)
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM