While sending an email, I'm receiving a bunch of such errors:
A PHP Error was encountered
Severity: Notice
Message: fwrite(): send of 12 bytes failed with errno=32 Broken pipe
Filename: libraries/Email.php
Line Number: 1846
A PHP Error was encountered
Severity: Notice
Message: fwrite(): send of 39 bytes failed with errno=32 Broken pipe
Filename: libraries/Email.php
Line Number: 1846
A PHP Error was encountered
Severity: Notice
Message: fwrite(): send of 31 bytes failed with errno=32 Broken pipe
Filename: libraries/Email.php
Line Number: 1846
I have followed the CodeIgniter user guide to configure an SMTP:
$config['protocol']='smtp';
$config['smtp_host']='ssl0.ovh.net';
$config['smtp_port']='465';
$config['smtp_timeout']='10';
$config['smtp_user']='postmaster%example.com';
$config['smtp_pass']='password';
$config['mailtype'] = 'html';
$config['charset'] = 'utf-8';
$config['newline'] = "\r\n";
$config['useragent'] = 'Project';
It seems like the configuration file is just fine, and correct (I've checked the OVH's email configuration files).
Any solution for that?
If you are using cpanel for your website smtp restrictions are problem and cause this error.
SMTP Restrictions
This feature prevents users from bypassing the mail server to send
mail, a common practice used by spammers. It will allow only the MTA,
mailman, and root to connect to remote SMTP servers.
This control is also adjustable in Tweak Settings.
This setting has been updated.
The SMTP restriction is disabled.
I had a similar problem and had to disable SMTP Restrictions.
After that all was ok.
This is the answer that worked for me
http://biostall.com/resolving-error-with-sending-emails-via-smtp-using-codeigniter/
Be sure to use "\r\n" and not '\r\n'
Also you can set this in a config file:
$config['newline'] = "\r\n";
$config['crlf'] = "\r\n";
Same problem here... but what worked for me was these set of configuration:
$config['protocol'] = 'smtp';
$config['smtp_host'] = XXX;
$config['smtp_user'] = XXX;
$config['smtp_port'] = 25; // was 465
$config['smtp_pass'] = XXX;
$config['newline'] = "\r\n";
And the message stopped. :D
I too was in the same situation. Was getting:
Message: fwrite(): SSL: Broken pipe</p><p>Filename: libraries/Email.php</p><p>Line Number:
2250&
the change that really made a difference was the 'smtp_crypto' config option set to 'ssl'
$config['protocol'] = 'smtp';
$config['smtp_host'] = 'ssl://example.com';
$config['smtp_crypto'] = 'ssl';
$config['smtp_port'] = '465';
$config['smtp_user'] = 'user@example.com';
$config['smtp_pass'] = 'password';
$config['mailtype'] = 'html';
$config['charset'] = 'iso-8859-1';
$config['wordwrap'] = 'TRUE';
I found this solution at https://www.codeigniter.com/user_guide/libraries/email.html by searching for SSL option.
As far as CI is concerned, there are so many issues with your email config array that could cause this error.
If you are on local development enviroment, Try changing capitalization for "smtp" to "SMTP" with capital letters.
If you are on a live server, try changing them to small caps.
All in all playing with $config['protocol'] = 'smtp'
capitalization some times helps.
use smpt_port:25, it's worked for me
I try this and it's work for me
$config['protocol'] = 'smtp';
$config['smtp_crypto'] = 'tls';
$config['smtp_host'] = 'smtp.gmail.com';
$config['smtp_port'] = '587';