CodeIgniter无法在VPS

时间:2018-05-16 04:38:34

标签: php codeigniter-3

我目前正在使用CodeIgniter处理REST API。我有一个使用gmail smtp的电子邮件验证系统,可以在localhost上正常工作。但是当我将它上传到VPS服务器时,它无法正常工作。

这是我的代码:

protected function send_confirmation($email, $hash){
    $config = array(
        'protocol' => 'smtp',
        'smtp_host' => 'ssl://smtp.gmail.com',
        'smtp_port' => 465,
        'smtp_user' => 'xxx@gmail.com',
        'smtp_pass' => 'xxx',
        'mailtype'  => 'html',
        'charset'   => 'utf-8',
        'crlf' => "\r\n",
        'newline' => "\r\n"
    );

    $this->load->library('email', $config);

    $mail = $this->email;

    $mail->from('no-reply@example.com', 'Example.com');
    $mail->to($email);

    $mail->subject('Email Verification');

    $encodemail = urlencode($email);
    $message = 'Some messages here.';

    $mail->message($message);   

    $mail->send();
}

另请注意,我使用的是 PHP 7.2 ,并且我尝试了很多配置,但似乎没有什么能在VPS服务器上运行。

1 个答案:

答案 0 :(得分:0)

试试这些

$config = Array(
    'protocol' => 'smtp',
    'smtp_host' => 'smtp.gmail.com', #changed
    'smtp_port' => 587, #changed 
    'smtp_user' => 'xxx@gmail.com',
    'smtp_pass' => 'xxx',
    'mailtype'  => 'html',
    'charset'   => 'utf-8',
    'newline' => "\r\n"
);

或使用PHPMailer