2012-06-11 6 views
5

Właśnie zarejestrowałem się na chrzestny serwer, aby przetestować skrypt PHP, który piszę. Używam PHPMailer, aby wysłać e-maile, używa GoDaddy email host: relay-hosting.secureserver.netPHPMailer na serwerze godaddy, poprawnie skonfigurowany?

Problem polega na tym, że chciałbym, aby oznaczyć wiadomość e-mail od "me"@gmail.com

Po wysłaniu wiadomości e-mail przy użyciu mojego adresu gmail w polu AddReplyTo konto e-mail odbiorcy wysyła je bezpośrednio do folderu Spam.

Wiem, że jest tu podstawowy problem, że wysyłam sprzeczne nagłówki i prawdopodobnie jest to przyczyną umieszczenia w folderze wiadomości-śmieci.

Czy ktoś może mi wyjaśnić, w jaki sposób mogę rozwiązać ten problem. Dziękuję Ci.

Kod:

try { 
    $mail = new PHPMailer(true); 
    $mail->IsSMTP(); // Using SMTP. 
    $mail->CharSet = 'utf-8'; 
    $mail->SMTPDebug = 2; // Enables SMTP debug information - SHOULD NOT be active on production servers! 
    $mail->SMTPAuth = false; // Enables SMTP authentication. 
    $mail->Host = "relay-hosting.secureserver.net"; // SMTP server host. 

    $mail->AddReplyTo('[email protected]', 'Me'); 
    $mail->AddAddress('[email protected]', 'Them'); 
    $mail->SetFrom('[email protected]', 'Me'); 
    $mail->Subject = 'PHPMailer Test Subject via smtp, basic with authentication'; 
    $mail->AltBody = 'To view the message, please use an HTML compatible email viewer!'; 
    $mail->MsgHTML("Hi, this is an test email"); 
    $mail->Send(); 
} catch (phpmailerException $e) { 
    echo $e->errorMessage(); 
} catch (Exception $e) { 
    echo $e->getMessage(); 
} 
+0

Ustaw prawidłowy adres "od", który jest faktycznie obsługiwany przez serwer, z którego wysyłasz. To może już wystarczyć. –

+3

Wysyłasz z serwera Chadddy, ale podając się za konto Gmail. W zasadzie podbijasz. (Na przykład serwer odbiorcy mówi: "Hej, ten e-mail twierdzi, że pochodzi z Gmaila, ale nie pochodzi z serwera Gmail, więc prawdopodobnie jest fałszywy.") –

+0

Czy masz na myśli wykorzystanie godadnego adresu e-mail? Niestety muszę użyć mojego adresu gmail w polu od. Dziękujemy za szybką odpowiedź – blacktea

Odpowiedz

8

Alex ma rację. Musisz podać adres z domeny, [email protected] W odniesieniu do komentarza Pekka na temat korzystania z serwerów Google dla poczty e-mail, które nie będą działać. Z Go Daddy hostingu dzielonego musisz użyć relay-hosting.secureserver.net, aby wysłać.

3

użyłem tego przykładu z jedną zmianą:

$ mail-> Host = "localhost"; // Host serwera SMTP.

GoDaddy wymaga użycia "localhost" podczas korzystania z PHPMailer.