2009-09-15 2 views
0

최근에 클라이언트에서이 문제가 발생했습니다. 코드 읽기 :PHP 메일 함수에서 이상한 동작이 발생합니다. 주소가 없습니다.

ini_set("sendmail_from", "[email protected]<current-domain>.com"); 

// $target_email has been validated as a value username. 
// $subject is a simple String. 
// $message is an HTML message. 
mail($target_email, $subject, $message); 

내 컴퓨터에서이를 테스트했을 때 정상적으로 작동했습니다. 집, 직장, Windows 2000 (IE6), XP (4 개의 다른 시스템, VirtualBox 인스턴스) (IE6 & 7, Opera 9, Firefox 3) 및 Vista (IE 7)에서 테스트했을 때뿐만 아니라 Konquerer와 Firefox를 통해 Ubuntu에서 (두 개의 다른 컴퓨터에서) 제대로 작동했습니다 (저는 Mac이 없습니다). 나는 4 개의 다른 네트워크와 3 개의 다른 카운티에서 웹 사이트를 시도했다. 이 사이트를 해독하기 위해 할 수있는 모든 노력을 다했는데 아무런 오류도받지 못했습니다. 이메일 주소는 @ < 현재 도메인 > .com입니다.

클라이언트가 사무실에서 테스트했을 때 이름이 noreply @ < 현재 도메인 > .com 인 SMTP 오류가 발생했으며 전자 메일을받지 못했습니다. 하지만 내 서버에서 실행될 때 같은 라인이 잘 작동합니다 (기본 램프는 PHP 5.3을 실행하도록 설정되었으며, Windows 5.2.6을가집니다).

정확히 무엇이 발생 했습니까? 내 가장 좋은 추측은이 기괴한 Windows 서버 문제 였고, 나는 그 밖에 무엇이 될 수있는 가장 foggiest가 없었습니다. 불행히도이 이론을 테스트하기 위해 로컬 컴퓨터를 구성하는 방법을 볼 수 없었습니다.

답변

0

내 생각 엔 클라이언트 SMTP 서버는 알려진 (예 : Active Directory에서) 주소에 대해서만 메일을 릴레이하고 다른 모든 '보낸 사람'을 거부합니다. noreply 주소가 클라이언트 도메인에 있습니까?

'알려진'좋은 [email protected] 주소에서 메일을 보내고 smtp 서버에 텔넷하여 문제를 협의 해보십시오.

+0

웹 사이트를 볼 때 웹 사이트에 "사용자가 존재하지 않습니다"라는 메시지가 표시됩니까? 전자 메일 시스템이 서버에서 보낸 어떤 것도 거부하더라도 PHP가 똑같이 작동하지 않아야합니까? – cwallenpoole

관련 문제