[英]connection time out issue when sending email for codeigniter
將電子郵件發送到codeigniter時出現問題。
$config = Array(
'protocol' => 'smtp',
'smtp_host' => 'ssl://smtp.gmail.com',
'smtp_port' => 465,
'smtp_user' => 'email@gmail.com',
'smtp_pass' => 'xxxxx',
'mailtype' => 'html',
'charset' => 'iso-8859-1'
);
$this->load->library('email', $config);
$this->email->set_newline("\r\n");
$this->email->to($user['company_email']);
$this->email->from('noreply@email.com', 'COMPANY');
$this->email->subject('Password reset');
$this->email->message('You have requested a code. Here is your code: '. $reset['return_pass']);
$this->email->send();
有時,我可以毫無問題地發送電子郵件,但是如果我多次使用它或多個用戶使用此發送電子郵件(用於忘記密碼),則googlemail無法連接到ssl://smtp.googlemail.com:465(連接超時),用戶將不會收到該電子郵件。 如何解決此問題? 這是googlemail的安全問題嗎?
我有一個類似的問題。 首先,檢查垃圾郵件,因為在我測試我的垃圾郵件時,Google判定它們為垃圾郵件,並開始在其中進行分類。
我發現使用此協議向多個用戶發送郵件非常不可靠,因此我只運行了一個循環來發送郵件:
function sendEmail($user){
$config = Array(
'protocol' => 'smtp',
'smtp_host' => 'ssl://smtp.gmail.com',
'smtp_port' => 465,
'smtp_user' => 'email@gmail.com',
'smtp_pass' => 'xxxxx',
'mailtype' => 'html',
'charset' => 'iso-8859-1'
);
$this->load->library('email', $config);
$this->email->set_newline("\r\n");
$this->email->to($user);
$this->email->from('noreply@email.com', 'COMPANY');
$this->email->subject('Password reset');
$this->email->message('You have requested a code. Here is your code: '.
$reset['return_pass']);
$this->email->send();
}
$users = array("person1@test.com", "person2@test.com");
foreach($users as $user){
sendMail($user);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.