Php

在雪豹上發送郵件

  • January 12, 2011

我正在嘗試讓 sendmail 在我的 MacBook Pro(OS 10.6.4)上工作,這樣我就可以使用 PHP 的 mail() 函式發送郵件。如果您知道如何在沒有 sendmail 的情況下執行此操作,我也會對此感興趣。

除非您有更好的主意,否則計劃是使用我的 gmail 帳戶通過 smtp.gmail.com 發送郵件。

我做了這個,那個沒有用。

在 /etc/postfix/smtp_sasl_passwords 我嘗試了兩個:

    smtp.yourisp.com username:password

    smtp.yourisp.com username@gmail.com:password

問題似乎是Google不喜歡我。我不認為我的 ISP 阻止了它,因為 Mail.app 可以通過 smtp.gmail.com 發送電子郵件就好了。

$email 是我的 gmail 地址。

$ printf "Subject: TestMail" | sendmail -f $email $email
$ tail /var/log/mail.log
Oct 21 19:38:18 Jays-MacBook-Pro postfix/master[8741]: daemon started -- version 2.5.5, configuration /etc/postfix
Oct 21 19:38:18 Jays-MacBook-Pro postfix/qmgr[8743]: CAACBFA905: from=<$email>, size=377, nrcpt=1 (queue active)
Oct 21 19:38:18 Jays-MacBook-Pro postfix/pickup[8742]: C2A68FA93A: uid=501 from=<$email>
Oct 21 19:38:18 Jays-MacBook-Pro postfix/cleanup[8744]: C2A68FA93A: message-id=<20101021233818.$mydomain>
Oct 21 19:38:18 Jays-MacBook-Pro postfix/qmgr[8743]: C2A68FA93A: from=<$email>, size=377, nrcpt=1 (queue active)
Oct 21 19:38:18 Jays-MacBook-Pro postfix/smtp[8746]: initializing the client-side TLS engine
Oct 21 19:38:18 Jays-MacBook-Pro postfix/smtp[8748]: initializing the client-side TLS engine
Oct 21 19:38:49 Jays-MacBook-Pro postfix/smtp[8746]: connect to smtp.gmail.com[74.125.157.109]:25: Operation timed out
Oct 21 19:38:49 Jays-MacBook-Pro postfix/smtp[8748]: connect to smtp.gmail.com[74.125.157.109]:25: Operation timed out
Oct 21 19:38:49 Jays-MacBook-Pro postfix/smtp[8746]: CAACBFA905: to=<$email>, relay=none, delay=1334, delays=1304/0.04/30/0, dsn=4.4.1, status=deferred (connect to smtp.gmail.com[74.125.157.109]:25: Operation timed out)
Oct 21 19:38:49 Jays-MacBook-Pro postfix/smtp[8748]: C2A68FA93A: to=<$email>, relay=none, delay=30, delays=0.08/0.05/30/0, dsn=4.4.1, status=deferred (connect to smtp.gmail.com[74.125.157.109]:25: Operation timed out)
$

我還嘗試將 /etc/postfix/main.cf 中的 myhostname、mydomain 和 myorigin 設置為

$ nslookup myip

(如http://www.whatismyip.com/所示)

仍然沒有運氣。

有任何想法嗎?

你能 telnet 到 smtp.gmail.com 的 25 埠嗎?(如果可以,請鍵入 QUIT 以關閉連接)。如果你不能,你的 ISP 可能阻塞了 25 埠,你應該嘗試使用 587 埠來送出你的郵件。

relay_host=[smtp.google.com]:587

感謝您關於埠 25 被阻止的說明。

我不得不使用smtp.gmail.com:587,因為smtp.google.com對我來說超時

引用自:https://serverfault.com/questions/193660