php 7.4 에서 phpmailer 로 한메일로 메일 발송 오류 문의
본문
centos6 리눅스의 php 5 사용하던 소스를
centos8 리눅스 php 7.4 사용하는 웹서버로 이전한 후에,
그누보드 회원 인증하는 부분에서 .. 메일이 안나가는군요.
완전히 안나가서 .
plugin/phpmailler/class.phpmailer.php 파일에서
아래와 같이 false 로 바꾸니, 네이버로는 메일이 나가는데,
한메일로는 안나갑니다.
//public $SMTPAutoTLS = true;
public $SMTPAutoTLS = false;
로그에.
ec 4 13:07:18 home3 sendmail[15541]: STARTTLS=client, relay=mx1.hanmail.net., version=TLSv1.2, verify=OK, cipher=ECDHE-RSA-AES128-GCM-SHA256, bits=128/128
Dec 4 13:07:20 home3 sendmail[15541]: 3B447HUu015537: to=<*** 개인정보보호를 위한 이메일주소 노출방지 ***>, delay=00:00:03, xdelay=00:00:02, mailer=esmtp, pri=122819, relay=mx1.hanmail.net. [211.249.219.37], dsn=5.0.0, stat=Service unavailable
Dec 4 13:07:20 home13 sendmail[15541]: 3B447HUu015537: 3B447KUu015541: DSN: Service unavailable
와 같이 한메일로 보내면 dsn=5.0.0 에러가 납니다.
그런데. 이서버에서 쉘 상태에서 다른 방식으로 한메일로 보내면 또 잘 갑니다.
그러니까 한메일에서 이 서버 아이피가 차단된건 아닌거 같고.
그누보드에 포함된 phpmailer 관련 문제 같군요.
해결 방법이 있을까요?
그리고, phpmailer 통해서 메일 보내기 에러가 나는 로그를 보면
ctrladdr="" 항목이 없습니다.
이 항목이 없는 이유가 있을까요?
답변 2
메일서버는 설치 됐나요?
일단 해결했습니다.
class.phpmailer.php 파일에서
84 * @var string
85 */
86 public $Sender = '*** 개인정보보호를 위한 이메일주소 노출방지 ***';
87
와 같이 Sender 변수에 발신자 이메일 주소를 수동으로 넣으니
메일이 가네요.