웹마스터 팁

안녕하세요. Windows 2003에서 zbxe를 사용하기 시작한지 얼마 안되는 사용자입니다.

버그 신고에도 어떤 분이 윈도우즈 서버에서 메일발송에 관련된 문제를 Report해 주신 것을 보았는데, 저도 똑같은 경험이 있습니다.
확인을 해보니 윈도우즈 가상 SMTP의 경우 mail 함수의 첫번째 인자를 "아무개 <nobody@his.com>"의 형태로 입력하면 잘못된 메일주소라고 하여 메일이 발송되지 않더군요.

따라서 mail() 함수의 첫번째 인자를 nobody@his.com의 형태로 만들어주어야 하는데, 이 경우 수신자의 이름을 "아무개"라고 표시해주기 위해서는 헤더 부분에 "To: 아무개 <nobody@his.com>"의 형태로 넣어주면 되는군요.

단, 가상 SMTP 서버에서 PHP가 돌아가는 서버에 대해 릴레이가 가능하도록 설정되어 있어야 합니다. 리눅스나 유닉스의 경우 직접 sendmail 라이브러리를 이용해 메일을 발송하는 반면 윈도우즈에서는 PHP에서 SMTP 서버로 릴레이 하는 방식을 사용하기 때문인 것같습니다.


저는 단일서버에 가상 SMTP와 Apache를 운영하기 때문에 가상 SMTP 서버에서는 127.0.0.1에 대한 릴레이를 허용하고, 
다음과 같이 /classes/mail/Mail.class.php 파일의 send() 함수 중 두 곳을 수정하여 메일발송기능 사용하고 있습니다.

현재 수정하여 사용하고 있는 send() 함수 부분은 다음과 같습니다.

1. 헤더 설정부분

            $headers = sprintf(
                "From: %s".$eol.
                "To: %s".$eol. // <= 추가한 부분
                "MIME-Version: 1.0".$eol.
                "Content-Type: multipart/alternative;".$eol."tboundary="%s"".$eol.$eol.
                "",
                $this->getSender(),
                $this->getReceiptor(),  // <= 추가한 부분
                $boundary
            );

2. 메일 발송 부분

//            return mail($this->getReceiptor(), $this->getTitle(), $body, $headers); 
^= 기존코드 return mail($this->receiptor_email, $this->getTitle(), $body, $headers);
^= 수정한 부분 : mail() 함수의 첫번째 인자


저 같이 Windows에서 사용하시는 분들에게 도움이 되셨으면 하구요. 며칠 뒤에 나올 1.0.7에 반영이 되었으면 합니다.

제목 글쓴이 날짜
클라우드플레어 사용시 서버 IP 노출방지 체크리스트 gnbstory 2016.12.09
php 5.6에서 인증메일 SMTP 연결에 실패할때.. file 루비스코 2015.03.31
간단하게 외부 SMTP 로 인증메일 보내기. [1] file AJKJ 2014.07.22
네이버 SMTP로 인증메일 보내기 [12] Neder 2013.08.26
회원가입 인증메일 제목 msg_confirm_account_title 오류 해결방법 [2] 뒤뒤 2013.06.27
xe 안에 포함된 php mailer를 통하여 smtp 연동하여 메일 보내기 팁 sbshs77 2012.12.28
가입 메일 인증 SMTP 안되시는 분들 참고하세욤~ 네이버 메일 서버 사용. [4] file 테나 2012.12.08
인증메일을 gmail의 smtp로 보내기 [29] showjean 2012.07.17
XE를 이용하여 SMTP 보내보기[개발자용] [10] 라르게덴 2011.11.02
내 PC에서 XE 빠르게 설치하는 방법 [7] 차오이 2011.04.10
우분투 10.04 LTS, sendmail 설치 및 설정 fsfsdas 2011.02.20
SVN Commit 정보 출력 설정 (CIA Script) DroArc 2007.11.25
php 4.3.2 의 php.ini 내용 (내컴 설치본) 이성헌 2005.12.15
nWmail 서버 구축 방법- 자세한 문서는 w3ip.com 에 있음 이성헌 2005.12.15
apache+php+mysql+phpmyadmin+zeroboard 설치 이성헌 2005.12.15
[해킹당한경험이 있는분 참고하세요]이제는 제로보드 서버도 안전하게 해킹당하지 않고 운영합시다. [20] 양승의 2005.02.22
윈도우즈용 메일서버 추천- NMail [3] u2em 2004.07.19
포트 스캐닝 감시 및 OS 정보 숨기기 [3] 좋은진호 2003.10.30
익스체인지 서버 취약점으로 인한 임의 코드 실행 문제 ATpple.com 2003.10.24
apache + php + mysql (window 설치) 이성헌 2003.06.05