어떠한 이벤트가 있을때, 메일을 보내 기록을 남기고 gmail 앱의 알림 기능을 이용하고 싶었다.
필자 같은 경우에는 api를 만들어두고, vba 매크로 작업 전,후 그리고 서버 상태를 메일로 보낼 때 사용하였다.
그 밖에도 서버 특별한 이벤트가 있을 때, 비정상적인 이용자가 있을 때 메일로 보내면 좋을 것 같다.
앱 비밀번호 항목이 보이지 않는다면 위에서 검색한다.<2023.05.22 추가>




기기용 앱 비밀번호를 $config[‘smtp_pass’] 값에 넣어주면 된다.
sendmail을 설치한다.
ubuntu : sudo apt install sendmail
http://www.ciboard.co.kr/user_guide/kr/libraries/email.html 참고 바람
application/config/email.php
<?php
$config['useragent'] = 'CodeIgniter';
$config['protocol'] = 'smtp';
//$config['mailpath'] = '/usr/sbin/sendmail'; //파일 위치 확인해보기
$config['smtp_host'] = 'ssl://smtp.googlemail.com';
$config['smtp_user'] = 'example@gmail.com';
$config['smtp_pass'] = 'dfcgreirxvjryragv'; //이 부분은 밑에서 설정한다.
$config['smtp_port'] = 465;
$config['smtp_timeout'] = 5;
$config['wordwrap'] = TRUE;
$config['wrapchars'] = 76;
$config['mailtype'] = 'html';
$config['charset'] = 'utf-8';
$config['validate'] = FALSE;
$config['priority'] = 3;
$config['crlf'] = "\r\n";
$config['newline'] = "\r\n";
$config['bcc_batch_mode'] = FALSE;
$config['bcc_batch_size'] = 200;
메일 발송시
$this->load->library('email');
$this->email->from('send@cono.kr', 'cono');
$this->email->to('receive@cono.kr');
$this->email->subject('제목입니다.');
$this->email->message('내용입니다.');
if($this->email->send()){
echo '성공';
}else{
echo '실패 '.$this->email->print_debugger();
}