我无法通过SMTP访问1和1电子邮件,在他们的网站上他们声明以下信息应该用于SMTP
Outgoing (SMTP) Server smtp.1and1.com
Outgoing port with TLS enabled 587
Outgoing server requires authentication? Yes
但是,当我在codeigniter中的电子邮件配置文件中使用它时,我得不到以下配置的结果:
$config['protocol'] = "smtp";
$config['smtp_host'] = "smtp.1and1.com";
$config['smtp_port'] = "587";
$config['smtp_user'] = "noreply@domain.com";
$config['smtp_pass'] = "noreply";
$config['smtp_crypto'] = 'tls';
$config['charset'] = 'utf-8';
$config['mailtype'] = 'html';
$config['wordwrap'] = TRUE;
$config['crlf'] = '\r\n';
$config['newline'] = '\r\n';
此外,电子邮件调试功能返回:
The following SMTP error was encountered:
Unable to send email using PHP SMTP. Your server might not be configured to send mail using this method.
答案 0 :(得分:2)
$config1and1 = array(
'protocol' => 'smtp',
'smtp_host' => 'smtp.1and1.es',
'smtp_port' => 587,
'smtp_crypto' => 'tls',
'smtp_user' => 'your full email', //example: jujo@domain.com
'smtp_pass' => 'mail pass',
'mailtype' => 'html',
'charset' => 'utf-8',
'newline' => "\r\n"
);
如果你不想要邮件类型html可以选择另一种类型。我希望能帮到它;)
答案 1 :(得分:0)
似乎有codeigniter的问题,TLS方面需要更多的工作,我最终使用github.com/ivantcholakov/codeigniter-phpmailer
该库易于安装和快速运行。
答案 2 :(得分:0)
问题在于
行$config['newline'] = '\r\n';
$config['crlf'] = '\r\n';
' \ r \ n'应该用双引号书写。
所以该行应
$config['newline'] = "\r\n";
$config['crlf'] = "\r\n";
希望这有效。
答案 3 :(得分:-1)
你试过这个吗?
$config['smtp_port'] = 587;
没有引号。
使用qoutes传递一个字符串,不带引号整数