2010-02-24 6 views

답변

2

Net_SMTP을 사용하여 서버에 연결하십시오. 그것은 완벽하지는 않겠지 만, 당신이 연결할 수 없다면 그것은 아마 아래로입니다.

+1

나는 HELO와 QUIT도 보낼 것입니다. – gnud

+0

@gnud : Hah. 네, 사실, 제가 언급 했어야합니다. –

0

대부분의 메일 서버는 포트 25에 대한 자세한에 대한 PHP docs를 참조 소켓

$address = gethostbyname('www.somewhere.com'); 
$service_port="25"; 
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); 
if ($socket === false) { 
    echo "socket_create() failed: reason: " . socket_strerror(socket_last_error()) . "\n"; 
} else { 
    echo "OK.\n"; 
} 
echo "Attempting to connect to '$address' on port '$service_port'..."; 
$result = socket_connect($socket, $address, $service_port); 
if ($result === false) { 
    echo "socket_connect() failed.\nReason: ($result) " . socket_strerror(socket_last_error($socket)) . "\n"; 
} else { 
    echo "OK.\n"; 
} 

를 사용하는 예이다.

0
function checkSMTPService($hostname, $port) 
{ 
    // Create a socket. If we fail to create a socket return false 
    // This is really more to check that we are able to create a socket 
    // than if we are able to check the server 
    $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); 
    if($socket === false) return false; 

    // Now we will connect to the server. If we fail we return false. 
    $result = socket_connect($socket, $hostname, $port); 
    if($result === false) return false; 

    return true; 

} 
관련 문제