20210603)시놀로지 그누보드 이메일 인증 의 모든것_그누보드 G5에서 회원 PW 잊었을시 변경 메일 보내기 수정하기 ......G5에서 메일기능을 사용하기 위한 phpmailer 설정법
본문
.......> 0
$mail->SMTPDebug = 0; // enables SMTP debug information,2 to 0으로 하면 아래와 같이 메세지가 나오지 안네요
G5에서 메일기능을 사용하기 위한 phpmailer와 sendmail 설정법
- 현원
- 추천
- 조회 619
- 그누보드
- 2014.02.05 13:43
가입자 인증메일 및 비번 분실 시 이메일 보내기, 관리자에게 메일 보내기 등의 기능 사용을 위해 메일이 꼭 필요한 상황에서 방법을 몰라 검색과 시도를 반복, 삽질하다가 최종 한별아빠님의 조언으로 성공한 설정법을 정리했습니다.
저와 같이 아무 것도 모르지만 자력으로 서버를 운영해보려는 분들께 조금이나마 도움이 될까해서 글 남깁니다.
이 기회를 빌어, 그누보드 개발자분들과 ASR과 아미나 스킨을 제작해서, 하고자 하는 사람이면 누구나 스스로 해나갈 수 있도록 해주시고 도움을 주시는 한별아빠님께 깊은 감사의 말씀 드립니다.
1. phpmailer 셋팅
* G5에 기본으로 설치되는 plugin/PHPMailer_v2.0.4 는 사용하지 않음. 폴더 전체 삭제.
* 최신판인 PHPMailer 5.2.7 로 대체함. (https://github.com/Synchro/PHPMailer)
* 필요한 파일: 세개의 파일만 있으면 됨. (class.phpmailer.php, class.smtp.php, PHPMailerAutoload.php)
* 위의 세 파일을 adm/ 폴더 안에 배치.
* 복사해 넣은 3개 파일은 수정 필요 없음.
2. G5 mailer.lip.php 파일 수정
(구글 메일 587포트, tls로 셋팅한 예제임. 네이버 등 다른 smtp를 사용하기 위해서는 해당 주소 넣어야 함. 네이버 imap서비스 이용 도움말 : ( http://help.naver.com/ops/step2/faq.nhn?fcatid=12469#도움말보기 )
* 수정파일 : lib/mailer.lib.php
* G5 원본 파일 내용
(4번줄)
include_once(G5_PHPMAILER_PATH.'/class.phpmailer.php');
(19번 ~ 29번줄)
$mail = new PHPMailer(); // defaults to using php "mail()"
if (defined('G5_SMTP')) {
$mail->IsSMTP(); // telling the class to use SMTP
$mail->Host = G5_SMTP; // SMTP server
}
$mail->From = $fmail;
$mail->FromName = $fname;
$mail->Subject = $subject;
$mail->AltBody = ""; // optional, comment out and test
$mail->MsgHTML($content);
$mail->AddAddress($to);
* 수정한 내용
(4번줄)
include_once(G5_ADMIN_PATH.'/class.phpmailer.php'); // adm 폴더 안으로 class.phpmailer.php 를 배치한 경로 설정
include_once(G5_ADMIN_PATH.'/class.smtp.php'); // adm 폴더 안으로 class.smtp.php 를 배치한 경로설정
(20번 ~ 40번) (붉은색이 추가된 내용임 _ username과 password 부분 자신의 것으로 수정 필요)
$mail = new PHPMailer(); // defaults to using php "mail()"
if (defined('G5_SMTP')) {
$mail->IsSMTP(); // telling the class to use SMTP
$mail->Host = G5_SMTP; // SMTP server
$mail->Port = 587; // set the SMTP port
}
$mail->SMTPDebug = 2; // enables SMTP debug information,
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "tls"; // sets the prefix to the servier
$mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
$mail->Port = 587; // set the SMTP port for the GMAIL server
$mail->Username = "username@gmail.com"; // GMAIL username
$mail->Password = "비밀번호"; // GMAIL password
$mail->CharSet = "UTF-8"; // class.phpmailer.php 의 기본값이 iso-8859-1 이므로, UTF-8 로 변경함.
$mail->Encoding = "base64"; // 기본값이 8bit 이므로, base64로 변경함.
$mail->From = $fmail;
$mail->FromName = $fname;
$mail->Subject = $subject;
$mail->AltBody = ""; // optional, comment out and test
$mail->MsgHTML($content);
$mail->AddAddress($to);
3. sendmail 프로그램 설정
apmsetup 및 autoset 등으로 설치한 경우 기본 sendmail 프로그램 설치됨.
아래와 같이 설정
SMTP 서버 주소 : smtp.gmail.com
SMTP 서버 포트 : 587
기본 도메인 : 자신의 도메인 명
오류 기록 파일명 : error.log
SMTP 인증용 ID : username@gmail.com
SMTP 인증용 패스워드 : 비밀번호
SMTPS(SSL) 지원 : tls 선택
4. sendmail 프로그램이 설치되어 있지 않은 경우
다운로드 주소 : http://glob.com.au/sendmail/
php 경로설정 필요.
php.ini 파일의 1013번째 줄
(라인은 다를 수 있음. 다를 경우 아래 문구 찾아서 수정)
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
sendmail_path =D:/APMsetup/Server/sendmail/sendmail.exe –t (경로는 자신의 설치 환경에 맞게 수정해야 함)
sendmail 경로 : 다운로드한 sendmail 설치한 경로/sendmail.exe –t 로 설정 (예제, D:/APMsetup/Server/sendmail/sendmail.exe –t )
다운로드한 sendmail 프로그램 폴더 내의 sendmail.ini 파일에서 설정값 수정
‘;’ 가 없는 라인에 위의 설정값(3. sendmail 프로그램 설정)과 같이 수정
5. config.php 파일 수정
config.php 파일에서 149번 라인 내용을 주석처리
//define('G5_SMTP', '127.0.0.1');
참고 문서
sir의 sbtech님 글 - http://sir.co.kr/bbs/board.php?bo_table=g5_tip&wr_id=947
내용 정리되기까지 삽질한 이력
http://amina.co.kr/bbs/board.php?bo_table=qna&wr_id=6892#c_7019
https://11q.kr https://11q.kr https://11q.kr http://shimss.mooo.com
관련자료
-
링크
-
첨부등록일 2016.03.25 21:40
-
이전작성일 2021.06.08 12:53
-
다음