Codeigniter 1和1电子邮件

时间:2015-07-18 17:53:54

标签: php codeigniter email

我无法通过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.

4 个答案:

答案 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)

似乎有cod​​eigniter的问题,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传递一个字符串,不带引号整数