ホームページ >バックエンド開発 >PHPチュートリアル >PHP の「mail()」関数のメールがスパム フォルダーに入ってしまうのはなぜですか?
PHP で電子メールをスパムに送信するメール機能のトラブルシューティング
PHP の mail() 関数経由で電子メールを送信すると、頻繁にスパムに分類されてしまうフォルダ。この問題を解決するには、根本的な問題を理解する必要があります。
この問題を解決する鍵は、mail() 関数が適切に構成された SMTP サーバーを利用していないという事実にあります。例:
$ticketDetail is an array containing pertinent information for transmission. sendOwnershipEmail('[email protected]', $ticketDetail); function sendOwnershipEmail($email, $ticketDetail) { $param = new stdClass(); $param->content = "<div> <div><b>".$ticketDetail[0]['ticket_number']."</b></div><br/> <div><img src='".$ticketDetail[0]['image_path']."'/></div><br/> <div>Ticket with ticket number ".$ticketDetail[0]['ticket_number']." has been requested for tranfer from <div/> <div>".$ticketDetail[0]['oldDepartment']." to ".$ticketDetail[0]['newDepartment']." Department <div/> </div>"; $param->sendTo = $email; $param->subject = "Request for Department transfer"; sendMailFunction($param); } function sendMailFunction($param) { $to = $param->sendTo; $subject = $param->subject; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers .= 'From: [email protected]' . "\r\n"; $message = "<html><head>" . "<meta http-equiv='Content-Language' content='en-us'>" . "<meta http-equiv='Content-Type' content='text/html; charset=windows-1252'>" . "</head><body>" .$param->content. "<br><br></body></html>"; mail($to, $subject, $message, $headers); }
解決策
SMTP サーバー: PHP の mail() 関数はサーバーに依存して電子メールを送信しますが、サーバーが適切に構成されていない可能性があります。 PHPMailer を使用し、専用の SMTP サーバーと組み合わせて SMTP 認証を使用するように設定すると、この問題が軽減されます。
PHPMailer ライブラリ: PHPMailer ライブラリは、電子メールの送信専用に設計されたオープンソースの PHP ライブラリです。 SMTP 認証の処理を含むさまざまな機能を提供します。 PHPMailer をコードと統合すると、専用の SMTP サーバーを構成できるようになり、問題が解決されます。
以上がPHP の「mail()」関数のメールがスパム フォルダーに入ってしまうのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。