Email
mail 有效,但 sendmail 無效!(後綴)
我在伺服器上安裝了 postfix,當我使用命令發送電子郵件時,
sendmail
它沒有被傳遞,但是當我使用這就是日誌顯示的內容
echo "test email" | sendmail sendmail@mailinator.com
Sep 4 14:33:03 howtocode1 postfix/pickup[271977]: 38418406E2: uid=0 from=<root> Sep 4 14:33:03 howtocode1 postfix/cleanup[272164]: 38418406E2: message-id=<20210904143303.38418406E2@codingschool.tk> Sep 4 14:33:03 howtocode1 postfix/qmgr[231761]: 38418406E2: from=<root@codingschool.tk>, size=295, nrcpt=1 (queue active) Sep 4 14:33:03 howtocode1 postfix/smtp[272166]: 38418406E2: to=<sendmail@mailinator.com>, relay=mail2.mailinator.com[45.33.83.75]:25, delay=0.06, delays=0.03/0.01/0.01/0.01, dsn=2.0.0, status=sent (250 Ok) Sep 4 14:33:03 howtocode1 postfix/qmgr[231761]: 38418406E2: removed
顯然它看起來是正確的。但是沒有郵件被送達。但是這個:
echo "test email 2" | mail bobo@mailinator.com
效果很好!郵件已發送!所以我不明白為什麼他們的
sendmail
。任何的想法?
好吧,這是有史以來最奇怪的事情。這不起作用:
echo "Subject: 1hello people" | sendmail bobo@mailinator.com
但這有效:
echo "Subject: hello people >this is the body" | sendmail bobo@mailinator.com
因此,由於某種原因,如果沒有主體,只是一個主題,它就行不通。它聲稱它已被發送,但不知何故它不被接受。我嘗試發送到除了 mailinator 之外的其他地方並且遇到了同樣的問題。
好的,我們直接測試一下:
$ host -t mx mailinator.com mailinator.com mail is handled by 1 mail.mailinator.com. mailinator.com mail is handled by 1 mail2.mailinator.com.
➜ ~ telnet mail.mailinator.com 25 Trying 23.239.11.30... Connected to mail.mailinator.com. Escape character is '^]'. 220 mail.mailinator.com ESMTP Postfix EHLO LutzWillek 250-mail.mailinator.com 250-8BITMIME 250-STARTTLS 250 Ok MAIL FROM:<root@codingschool.tk> 250 Ok RCPT TO:<sendmail@mailinator.com> 250 Ok DATA 354 End data with <CR><LF>.<CR><LF> Subject: Test from command line Hello. This is a test message. . 250 Ok Connection closed by foreign host.
這有效,因為可以在https://www.mailinator.com/v4/public/inboxes.jsp?to=sendmail中看到該消息
您的日誌顯示帶有 id 的消息
38418406E
也已發送,並且遠端伺服器接受了此郵件。所以再試一次,它會工作的。