2012-05-04 2 views
0

PHP 메일 기능에 전자 메일을 보내는 데 문제가있는 것 같습니다 : @ domain.edu.ag. 이 기능이 외부 도메인을 지원합니까?PHP 메일 기능 및 외국 도메인

도메인은 Google Apps에서 호스팅되므로 메일은 동일한 방식으로 수신되어야합니다. SPAM에 메시지가 없으므로 나를 더 멀리 탐험하게됩니다. 그래서 나는 메일을 보내도록 테스트 스크립트를 만들었고, 메일이 보내지 않는 것 같았다.

이것은 내가 테스트 목적으로 사용하는 것입니다 :

<?php 
    $to = "[email protected],[email protected]"; 
    $subject = "Hi!"; 
    $body = "Hi,\n\nHow are you?"; 
    if (mail($to, $subject, $body)) { 
    echo("<p>Message successfully sent!</p>"); 
    } else { 
    echo("<p>Message delivery failed...</p>"); 
    } 
    ?> 

결과는 @gmail 메시지가 수신 있지만 @의 edu.ag 이메일 주소이었다이었다. 무슨 일 이니? 오류가 없으며 메일이 다른 발신자로부터 정상적으로 수신되었습니다.

+0

아니요, PHP의 mail() 함수는 외부 도메인에 문제가 없습니다. Mail()은 시스템 구성 (예 : sendmail)을 사용하기 때문에 시스템 로그를 검사하고 테스트 호스트를 차단하거나 거부 할 가능성이있는 호스트를 확인하는 것이 가장 좋습니다. – j08691

+0

$에서 스트링으로 이메일 주소를 바꾼다면 어떻게됩니까? Gmail로 전송되는 이메일은 계속 전송되며 .edu.ag 메일은 도착하지 않습니까? .edu.ag 주소로 보내면 어떨까요? – andrewsi

답변

0

이 대신 일을보십시오 :

$to = array("[email protected]", "[email protected]"); 
$subject = "Hi!"; 
$body = "Hi,\n\nHow are you?"; 

foreach($to as $to_addr) { 
    mail($to_addr, $subject, $body) 
} 

그래서 당신은 배열의 이메일 주소를 통해 반복하고 각각에 대해 메일 문을 보내고있다. 나는 쉼표로 정규 문자열을 사용하여 과거에 몇 가지 문제가있었습니다.

+0

고맙지 만 근본적인 문제는 메일을 한 전자 메일 주소로 보내고 다른 전자 메일 주소로 바꾸더라도 gmail은 수신되지만 외부 도메인은 수신하지 않는다는 것입니다. 그게 이상하지 않니? – Sean