테스트 사이트 - 개발 중인 베타 버전입니다

외부 네이버 메일 셋팅 적용하기

· 1개월 전 · 200 · 3

첫째 

네이버 로그인 > 메일웹이동 > 환경설정  >  POP3/IMAP 설정> IMAP/SMTP 설정

그리고

1040054251_1758765572.3196.png

설정하기 클릭

1040054251_1758765690.8134.png

2단계인증 관리 클릭 여기서 중요 사용하신 휴대폰 기기 등록 필하셔야합니다.

등록후 하고 인증완료하면 다음화면

인증 재확인로그인 후

1040054251_1758765856.2428.png

여기서 3번 생성된 비밀번호 확인 하시고 이암호화 된비밀번호를 config.php에서 설정하시던가 메일함수에서 설정하시던가하면됩니다. 

기본적으로 이설정이되어 야 합니다

그렇면

첫째 : 이제 앱 암호화된 비밀번호를 config.php 파일열어서 설정해주시면됩니다.

SMTP 상수선언란에 를 찾아서 약 184  라인 쯤

// SMTP
// lib/mailer.lib.php 에서 사용
// define('G5_SMTP',      '127.0.0.1');
// define('G5_SMTP_PORT', '25');
define('G5_SMTP', 'smtp.naver.com');   // SMTP 서버
define('G5_SMTP_PORT', 587);           // TLS 사용시 587, SSL 사용시 465
define('G5_SMTP_SECURE', 'tls');       // SSL: 'ssl', TLS: 'tls'
define('G5_SMTP_USER', '네이버 계정 아이디'); 
define('G5_SMTP_PASS', '생성된 비밀번호');
define('G5_SMTP_TIMEOUT', 10);         

// 저장/업데이트

 

둘째 : lib/mailer.lib.php 파일 약 28라인 아래 통째로 체인지 해주세요

$mail = new PHPMailer(); // defaults to using php "mail()"
if (defined('G5_SMTP') && G5_SMTP) {
            $mail->isSMTP();
            $mail->Host = G5_SMTP; 
            $mail->SMTPAuth = true; 
            $mail->Username = G5_SMTP_USER; 
            $mail->Password = G5_SMTP_PASS; 
            $mail->SMTPSecure = defined('G5_SMTP_SECURE') ? G5_SMTP_SECURE : 'tls'; // SSL/TLS
            $mail->Port = defined('G5_SMTP_PORT') ? G5_SMTP_PORT : 587;
            $mail->Timeout = defined('G5_SMTP_TIMEOUT') ? G5_SMTP_TIMEOUT : 30;
            $mail->SMTPKeepAlive = true;
            $mail->From = $fmail;
            $mail->FromName = $fname;
        }

        $mail->CharSet = 'UTF-8';
        $mail->Subject = $subject;
        $mail->AltBody = ""; 
        $mail->msgHTML($content);
        $mail->addAddress($to);

//저장/업데이트 후

 

3째 : 관리자 프론트  환경설정 > 기본환경설정 다음과같이 네이버메일 등록 확인

1040054251_1758768929.2628.png 

4째 : 환경설정 > 메일 테스트 > 발송 확인 메일확인

       회원관리 > 회원메일 발송  해보시면 됩니다. 메일확인

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 3개

1개월 전

2단계 인증 이후 좋은 팁입니다~

$mail = run_replace('mail_options', $mail, $fname, $fmail, $to, $subject, $content, $type, $file, $cc, $bcc);
를 이용해서 HOOK를 사용하면 원본 수정 없이도 가능하겠네요.

@무와보 네선생님 잘못된생각을 하시는 것입니다. 그럴필요성이 없다라는것이지요.

이미 메일 함수는 라이브러리에 적용된상태입니다. 이또한헤더에서 호출을 하고있는상태이라는것이지요

하여

함수는 수정을 해주셔야합니다.

물론

config.php환경파일에 정의된 것은 기본을 건들지않고 처리해도됩니다.

이부분을 훅으로 처리해도된다라는뜻이지요 

extentd / 훅파일명

 

하지만 구지 그럴필요성이 없어보인다른 점이지요 이미 환경파일은 기본으로 연동처리 되어있으며 상수처리되어있습니다.

하여 

결론은 훅을 처리할필요성이 없다라는 점입니다. 선생님.

추가로 smtp은 민감한 정보들이 있다라는 점 참고하시기 바랍니다. 선생님

1개월 전

@웅푸 원본 파일을 가급적 수정하지 않는 것이 업데이트시 유리하여 HOOK을 고민해보고 있습니다. 대부분의 민감한 부분은 함수 과정에서 처리할 수 있을 것 같네요. 몇일 전에 네이버 MAPS API에서도 키를 보이지 않게 처리해달라는 공지가 있었는데 smtp 정보 역시 함수화 처리하면 되지 않을까 싶네요.

config.php의 경우는 원래 수정해서 쓰는 파일이니 상관이 없지만 라이브러리 파일은 원본을 수정하지 않는 hook이라는 좋은 환경이 있는데 사용하는게 더 좋지 않을까 해서요.

define('G5_SMTP', ''); 부분만 처리하면 나머지는 다른 상수로 처리하여 run_replace를 이용해도 지장은 없을 것 같습니다. 

게시글 목록

번호 제목
24318
24317
24315
24309
24294
24293
24277
24262
24260
24253
24251
24236
24233
24228
24226
24221
24214
24203
24201
24199
24196
24195
24194
24192
24191
24187
24185
24183
24172
24168