가끔가다 dns서버를 설정하기 싫어하는 저같은 <----
사람들이 있으시다면..
sendmail에서.. 몇가지.. 이메일 전송이 안되는일이 발생합니다.
php에서 mail함수로 메일을 보내는데.. 501에러를 맞는것이죠
smtp 501에러는.. 그 도메인이 반드시 존재해라는 에러로서..
일반적으로
메일 로그입니다다
=======================
Apr 14 00:26:58 phpserver sendmail[3162]: k3DFQw7q003160: to=<xxxxxx>, ctladdr=<nobody@localhost.localdomain> (99/99), delay=00:00:00, xdelay=00:00:00, mailer=esmtp, pri=121467, relay=mail.ziwoo.net. [210.219.251.154], dsn=5.6.0, stat=Data format error
Apr 14 00:26:58 phpserver sendmail[3162]: k3DFQw7q003160: k3DFQw7q003162: DSN: Data format error
여기서
ctladdr=<nobody@localhost.localdomain> <-------- 이런식으로 나옵니다.
즉 nobody@local... 무시기니.. 받는쪽에서.. 거부를 하는것이지요.
이걸 반드시 자신의 서버의 이름으로 처리를 해야합니다.
물론 자체적인 dns서버가 있을때는.. 알아서 치환이 되지만.. 없을때에는
sendmail.cf에
##Dj$w.Foo.COM
라인을 찾아
Dj$ 자신의서버 를 적어줘야 합니다.
Dj$ sir.co.kr
이런식이되겠지요.
참 드믄케이스라서.. smtp 501 에러의 경우에 한해서..
해결법입니다.
드믄케이스이니 만큼.. 해결법 찾기도 좀 힘이듭니다.
증상으로는.. 네이버, 다음에는 이메일 전송이 되지만..
bcline 이나 또는 몇가지 smtp에서 보내는 서버의 도메인을 체크하는곳에서는
이메일이 반송되어서 보내어지지 않습니다.
즉 되는곳이 있고 안되는곳이 있도록 증상이 나타나서 또한.. 알기 힘듭니다.