最近Ubuntuにsendmailをインストールしました
sudo apt install sendmail
sudo sendmailconfig
email();
PHP関数を使用してメールを送信しようとしたとき
$to = "[email protected]";
$subject = "Mail Test at ".strftime("%T", time());
$message = "This is a test.";
$message = wordwrap($message, 70);
$from = "[email protected]";
$headers = "From: {$from}";
$result = mail($to, $subject, $message, $headers);
echo $result ? "sent" : "error";
PHPのWebサイトを閲覧するときにメッセージを受け取りますが、電子メール(公式の電子メール)は受け取りません。誰でも助けることができますか?
答え1
ホスト名を追加する必要があるかもしれません/etc/hosts
(127.0.0.1
ホスト名を含む行を見つけて追加)。
127.0.0.1 localhost localhost.localdomain your_hostname_here
再起動してみてくださいapache
。
$> sudo service apache2 restart
覚えておいてください:
mail
true
メッセージが構成されたMTAに正常に配信された場合は、成功()を返します。これは、MTAが実際にメールを送信したという意味ではありません。- スパムフィルタ(DNS検索、送信者確認など)が有効になって配信をブロックする可能性があるため、最新のメールサーバーはあなたの電子メールを受け入れない可能性があります。
sendmail
次のコマンドを使用して、いつでもメールキューを確認できます。
$> mailq